Method for visualizing an IVR system

ABSTRACT

The invention is a method of creating a dialstring for use with mobile smartphones and other computer-enabled telephones. A software app designed to implement the method recognizes input from the user (such as the initial digits of a phone number) that identifies the organization to be called, and accesses a stored representation of the IVR phone tree for that organization. The app then presents a graphical representation of all or part of the phone tree on the display of the telephone. The user can then respond to the graphical representation by providing selective inputs that cause the app to synthesize all or part of the dialstring needed to navigate the phone tree to the desired destination. Once a dialing option has been synthesized to the user&#39;s satisfaction, the user may provide additional input that the system interprets as an instruction to open a phone call and dial the synthesized number.

CROSS-REFERENCE TO RELATED APPLICATIONS

This patent application is a Continuation of U.S. patent applicationSer. No. 13/999,196, filed Jan. 27, 2014 and entitled METHOD FORVISUALIZING AN IVR SYSTEM, which is set to issue Feb. 2, 2016 as U.S.Pat. No. 9,253,321 and is incorporated herein by reference in itsentirety, and which claims the benefit of U.S. Provisional PatentApplication No. 61/840,190, filed on Jun. 27, 2013, which is alsoincorporated herein by reference in its entirety.

FIELD OF THE INVENTION

This invention relates to making phone calls, and more specifically,provides a method for pre-programming a dialing sequence, or dialstring,to allow more rapid connection to the desired destination at anorganization or company employing an interactive voice response (IVR)system. The method, typically implemented in software as a application(or “app”) on a smartphone with a touchscreen display, recognizes theintention of the user to make a call to an organization from userinputs, and responds by presenting a graphical representation of all orpart of the destination IVR phone tree on the display of the user'sdevice. The user can then select the desired destination in the IVR treethrough interaction with the display. Once selected, the method thencreates a dialing sequence that is then dialed upon appropriate userinput. In some embodiments, the dialing sequence is created after theuser selects a single input from the display. In some embodiments, thedialing sequence is built up through multiple interactions with thesystem through the display.

BACKGROUND OF THE INVENTION

Since the 1960s, automated interactive voice response (IVR) systems havebeen developed and are now widely employed by organizations andcompanies to direct calls coming in to the organization. The typical IVRsystem plays a pre-programmed greeting that presents options to theuser, such as “Welcome to Conglomorate Industries. Press or say 1 forcustomer service, 2 for technical support,” . . . etc., and then waitsfor a response from the user. User input can be provided from entering anumber on the phone, which triggers the generation of a touch tone(dual-tone multi-frequency (DTMF) signaling) signal, or by speaking theresponse. The IVR system then attempts to recognize the input, andswitch the call to the designated destination.

Often, the destination will again have a pre-programmed IVR response,such as “Welcome to Conglomorate customer service. Press or say 1 forcomputer products, 2 for telephone products, . . . ” etc. and the useragain must enter or say an option. This third destination may yet againhave a pre-recorded IVR response, which may even lead to a fourthdestination with a pre-programmed IVR response.

FIG. 1 illustrates the options presented in a phone tree for arepresentative IVR system, in this case, that of the United StatesCitizenship and Immigration Service (USCIS). The Top Tier 001 representsdialing the 800 number (1-800-375-5283). The 1^(st) Tier of options 011represents the two options that are presented once the system at theUSCIS answers the phone call, namely an option for proceeding in Englishor in Spanish. Once the user selects one of these options (which, forthe purpose of this illustration, will be assumed to be in English), the2^(nd) Tier 021 represents the seven options that are presented once thelanguage selection has been made. Likewise, once the user selects one ofthese 2^(nd) Tier 021 options, various 3^(rd) Tier 031 options areavailable, and upon selecting one of these 3^(rd) Tier options, various4^(th) Tier 041 options may be available, depending on the selection,etc.

When a caller wishes to interact with the USCIS, the caller wouldtypically dial 1-800-375-5283, wait for the reply, then press 1 (or 2),then wait for a reply, then press the next response, etc.

When an IVR system works well, it can direct the caller quickly to thedestination desired, while saving costs for companies and organizationsby allowing them to employ fewer human operators while still “handling”large call volumes. IVR systems are now a business service sector withrevenues of almost $2B annually, and several companies provide softwareand services to run and manage IVR systems, including: Avaya of SantaClara, Calif. <http://www.avaya.com/usa/>, Cicso Systems of San Jose,Calif. <http://www.cisco.com/en/US/products/sw/custcosw/ps3651/>,Genesys Telecommunications Laboratories of Daly City, Calif.<http://www.genesyslab.com/>, Nuance Communications of Burlington, Mass.<http://www.nuance.com/index.htm>, Verint of Melville, N.Y.<http://www.verint.com/>, and Voxeo products <http://voxeo.com/> offeredby Aspect Software Group of Chelmsford, Mass.

Unfortunately, complex IVR systems can often lead to time wasted by theuser trying to navigate the tree to find the answer to a simplequestion. This often leads to frustration on the part of the user. Usersmay have inadvertently pressed the wrong key on the phone keypad,finding themselves at a destination they did not want or even recognize,with no option to go “back” in the tree to try again. Or, the IVR systemmay have misunderstand a voice response, due to a noisy phoneconnection, a user's unexpected accent or use of unusual phrasing (suchas saying “Sure” or “OK” instead of “Yes”) or simply poor voicerecognition algorithms. In such a situation, the IVR system has againdirected the user to a destination that is unknown or unwanted. The IVRsystem may also be giving instructions in a language that is not wellunderstood by the caller—the caller may wish to contact a company oragency about a topic that they are able to competently discuss, but mustlisten to often long descriptions of topics they may not understood andtherefore find additionally confusing.

Some IVR systems have grown more sophisticated, becoming more capable ofrecognizing the wide variation possible in user input. However, problemsremain, deterring users who have had bad experiences with anorganization's IVR system. Online directories, such as provided byGethuman.com <http://gethuman.com/> or Whatis.com<http://whatis.techtarget.com/reference/Bypass-IVRS-Talk-to-a-real-person-cheatsheet>have appeared to help users bypass IVR systems altogether.

Although some companies may “hide” behind confusing IVR phone trees toavoid dealing with dissatisfied customers, many organizations deployingIVR systems, such as government agencies, legitimately want to provideservice to as many callers as possible, but have budget limitations onthe number of employees or call centers they can pay to answer phones.There is therefore a need for a system that can help guide users throughthe phone trees of an IVR system quickly and efficiently.

BRIEF SUMMARY OF THE INVENTION

The invention presented here is a system for use with telephones havinga visual display, such as mobile smartphones. The system recognizes aninput from the user (such as the input of the beginning of a phonenumber) that identifies the organization to be called, and accesses astored representation of the phone tree for that organization. Thisrepresentation of the phone tree may be stored locally, or remotely inan online server. The system then presents a graphical representation ofall or part of the phone tree on the display of the telephone. The usercan then respond to the graphical representation by providing selectiveinput that triggers the system to synthesize all or part of the dialingsequence needed to navigate the phone tree to the desired destination.Once a dialing option has been completely synthesized to the user'ssatisfaction, the user may provide additional input that the system theninterprets as an instruction to open a phone call and dial thesynthesized number.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 illustrates the IVR phone tree for the US Citizenship andImmigration Service (USCIS).

FIG. 2 presents a block diagram for a smartphone comprising softwarethat executes the method of the invention.

FIG. 3 illustrates a typical home screen display for a smartphone,illustrated including an example of an icon used to launch software thatexecutes the method of the invention.

FIG. 4 presents a flowchart with the first set of steps that will beexecuted by a smartphone app according to an embodiment of the method ofthe invention.

FIG. 5 presents a flowchart with the second set of steps that will beexecuted by a smartphone app according to an embodiment of the method ofthe invention.

FIG. 6 presents a flowchart with the third set of steps that will beexecuted by a smartphone app according to an embodiment of the method ofthe invention.

FIG. 7 presents a flowchart with the fourth set of steps that will beexecuted by a smartphone app according to an embodiment of the method ofthe invention.

FIG. 8 illustrates the appearance of a smartphone executing the initialsteps of an embodiment of the method of the invention.

FIG. 9 illustrates a user generating input using a smartphone during theinitial steps of an embodiment of the method of the invention.

FIG. 10 illustrates the appearance of a smartphone screen after userinput representing a portion of a desired number to call has beenrecognized according to an embodiment of the method of the invention.

FIG. 11 illustrates the appearance of a smartphone screen after the userhas selected a phone tree (the USCIS phone tree) for further explorationaccording to an embodiment of the method of the invention.

FIG. 12 illustrates the appearance of a smartphone screen displaying the1^(st) Tier options of the USCIS phone tree according to an embodimentof the method of the invention.

FIG. 13 illustrates the appearance of a smartphone screen displaying the2^(nd) Tier options of the USCIS phone tree according to an embodimentof the method of the invention.

FIG. 14 illustrates the appearance of a smartphone screen after the userhas completed several selections of options for the USCIS phone treeaccording to an embodiment of the method of the invention.

FIG. 15A illustrates the Phone Tree for GEICO Insurance.

FIG. 15B illustrates a subset of the options under one of the 1^(st)Tier selections for the Phone Tree for GEICO Insurance.

FIG. 15C illustrates a subset of the options under one of the 2^(nd)Tier selections for the Phone Tree for GEICO Insurance.

FIG. 16 presents a flowchart with the second set of steps that will beexecuted by a smartphone app according to an embodiment of the method ofthe invention using a graphical phone tree display.

FIG. 17 illustrates the appearance of a smartphone screen executing thesecond set of steps of an embodiment of the method of the inventionusing a graphical phone tree display.

FIG. 18 illustrates a user generating input using a smartphone duringthe second set of steps of a second embodiment of the method of theinvention using a graphical phone tree display.

FIG. 19 illustrates the appearance of a smartphone executing the secondset of steps of a second embodiment of the method of the invention,using a graphical display in a language different from the language usedin the Phone Tree.

FIG. 20 presents a block diagram of the components of a smartphoneconfiguration used to execute an embodiment of the method of theinvention, in which the IVR database is stored using a remote storagedevice.

FIG. 21 presents a block diagram of the components of a computer systemwhich may be used to execute an embodiment of the method of theinvention.

DETAILED DESCRIPTIONS OF EMBODIMENTS OF THE INVENTION I. Introduction

What follow are detailed descriptions of embodiments of the invention,including the best mode contemplated by the inventors at this time. Itwill be recognized that these embodiments are generally implemented assoftware code written in languages such as C, Objective C, C++, Java orC# and executed on “smartphones” using operating systems such as iOS®and its variations for Apple products, various versions of the Android®operating system distributed by Google Inc., or Windows® Phone OSdistributed by Microsoft Corp. Other smartphone operating systems, suchas Symbian, Blackberry OS, QNX, Blackberry 10, etc. will be known tothose skilled in the art.

II. Smartphone Structure

Although embodiments of this invention may be implemented on anyelectronic data processing system with an interface to a telephonenetwork, typical embodiments will be implemented on a “smartphone”. Ablock diagram of the components of a typical smartphone 100 upon whichthe invention may be implemented is illustrated in FIG. 2. Such asmartphone 100 will typically include a processor 101 such as amicroprocessor or other central processing unit (CPU), such as asystem-on-chip (SoC) manufactured according to the ARM processorarchitecture designed by ARM Holdings plc of Cambridge, UK, or theSnapdragon S4 architecture from Qualcomm, Inc. of San Diego, Calif. Theprocessor may be single core, or have multiple cores, and may be pairedwith additional graphics processing units (GPUs), such as a Mali GPUdesign from ARM Holdings plc, Adreno chips from Qualcomm, Inc. of SanDiego, Calif., or Tegra chips provided by Nvidia Inc. of Santa Clara,Calif.

The processor 101 will coordinate electronic signals to and from abuilt-in transceiver 190, which transmits and receives radio frequency(RF) signals to and from remote transceivers via one or more antennas199. The transceiver 190 will typically comprise both one or more RFtransmitters 191 and one or more RF receivers 192 as well as amodulator/demodulator (or modem) 195 that converts analog RF signalsinto digital signals for use within the phone, as well as convertinginternal digital signals into RF broadcast signals. The RF signalstransmitted between the smartphone 100 and a remote transceiver may alsocomprise both traffic and control signals (e.g., paging signals/messagesfor incoming calls), which are used to establish and maintaincommunication with another party or destination.

Within the smartphone 100, the processor 101 can coordinate electronicsignals from a number of sources, which will typically include internalmemory 105, often comprising transient random access memory (e.g.dynamic random access memory, or DRAM), and may also include variousinternal data storage devices 150, which are typically may be read/writemedia, or may be non-transient computer readable media, and which maycomprise flash memory devices, removable subscriber identity module(SIM) cards, microSIM cards, nanoSIM cards and the like.

The storage devices 150 may include a general purpose storage that isused to store both program instructions for the processor 101, such asthe smartphone operating system (OS) 151, as well as the programinstructions for one or more program products, or applications (“apps”)160 that may be executed using the processor 101. Aside from theseprograms, data, such as audio data, video data, configuration data,and/or other data or databases that may be accessed and/or used by theapps 160 and processor 101 may be stored as well. The storage devices150 may include a nonvolatile read/write memory, a read-only memory(ROM) and/or volatile read/write memory. Various application programminginterfaces (APIs) may be used to specify how various software componentsshould interact with each other and with the data stored in the storagedevices 150.

In some embodiments of the invention, the storage devices 150 may havestored therein an electronic database representing various IVR phonetrees 177, such as the phone tree illustrated in FIG. 1. In someembodiments of the invention, the storage devices 150 may have storedtherein an electronic representation of a Dialer Field 800 which storesdata related to a dialstring the user synthesizes for the purpose ofmaking a phone call. In some embodiments of the invention, the storagedevices 150 may have stored therein an electronic database representingan address book 188 with contact information defined by name andaddress, such as telephone numbers, email addresses and so on. The nameused for items in the contact book need not be real names of persons,but may be any combination of identifying characters.

Furthermore, the storage devices 150 may include “temporary” datastorage for a database of unsaved numbers. This “temporary” data storagemay be used for storing call lists, such as telephone numbers ofreceived or missed calls from remote parties. The storage devices 150may be considered “temporary” in the sense that unsaved numbers areautomatically deleted after a predetermined time period counted in days,weeks or months. Alternatively, the temporary data storage may hold onlya limited number of positions, working on a first-in/first-out basis. Inthis case, the storage devices 150 is “temporary” in the sense that anunsaved number is pushed step-by-step through the list by subsequentlyreceived calls until it is pushed out of the list.

The processor 101 will also coordinate electronic signals from a numberof input devices, such as: one or more microphones 110, various inputbuttons 112 (e.g. for controlling sound volume), a “home” button 115,one or more cameras 118, or other inputs 119 such as proximity sensors,ambient light sensors, and the like. The processor 101 may alsocoordinate electronic signals from built-in devices 108 such as anaccelerometer, magnetometer, GPS sensor, or gyroscopic sensor and thelike.

The processor 101 will also coordinate electronic signals to a number ofoutput devices, such as: one or more speakers 140, or various otheroutput devices 149. A variety of other input 119 and outputs 149 can becoordinated through a docking connector, audio jacks, or other outputconnections.

In a typical smartphone 100, the processor 101 will also coordinateelectronic signals to and from a touchscreen 130. The touchscreen 130 istypically a flat device comprising both a display 230 having an array ofeither illuminated liquid crystal elements or light emitting diodes(LEDs) to display information, and an array of built-in touch sensors135 that may sense electrical conductivity of a finger, or sensepressure on the device through changes in electrical capacitance. Whenthe software operating on the smartphone 100 displays various images,fields, and graphics on different portion of the display 230, variouscorresponding inputs from the sensors 135 provided by the user can begenerated by touching the corresponding portions of the display. The appand operating system software interpret the pressure and/or temperatureand/or conductivity at different points of the screen differently, whichallows, for example, the virtual “pressing of a button” when the usertouches the image of a “button” on a screen, or the use of a pinchingmotion by two fingers to virtually “zoom-in” (or the opposite motion to“zoom-out”) a displayed image.

Software code written for smartphones is often packaged as a dedicatedapplication, or “app” 160. The smartphone operating system will allowthe display of a graphical icon, stored typically as a 57×57 pixel PNGfile, on the touchscreen display, and when the position on the screenwhere the icon is displayed is touched (or, depending on the smartphoneand the operating system, pressed and held under pressure for apredetermined time), the signal generated is interpreted as aninstruction to launch the software program associated with the icon.Various apps may additionally provide a virtual “button” on the displaylabeled “close” that the user can press and hold to stop the executionof the app and return to the smartphone's home screen.

The smartphone operating system generally provides the code forinstructions that, among other things, interpret the signal strength andduration of a touch on the screen into instructions for executingvarious portions of stored code. The instruction code for apps mustgenerally conform to the standards for the operating system under whichthey were written. One standard for the iPhone produced by Apple Inc. ofCupertino, Calif., is the “iOS App Programming Guide” (Apple Inc. Oct.23, 2013)<https://developer.apple.com/library/ios/documentation/iPhone/Conceptual/iPhoneOSProgrammingGuide/iPhoneAppProgrammingGuide.pdf>.Others will be available for other smartphone operating systems, such asAndroid, Microsoft Windows OS, etc. and will be known to those skilledin the art.

Typical embodiments of the method disclosed with this Application can beimplemented by means of software code designed to run on a smartphone100. The smartphone may execute instructions encoded in the softwarethat use the various built-in functions available to smartphones, suchas dialing a phone number, or accessing data stored in the Internetthrough a Wi-Fi or some other data connection, such as those typicallyprovided by the smartphone's data carrier. The software code comprisingthe instructions for executing the method of the invention may typicallybe stored on local non-transient memory storage 150 within thesmartphone 100, such as a flash memory storage device. When descriptionsof the method herein are provided, such as “the user presses a button”,or “the user presses and holds the key”, they are to be typicallyunderstood as the pressing of virtual “buttons” as displayed on thesmartphone touchscreen, as managed through the non-transient stored codeof the app and the operating system, and do not represent real physical“buttons”.

FIG. 3 illustrates an example of a typical smartphone 100 in which anembodiment of the invention has been implemented. In this example, thesmartphone 100 is drawn to appear as a product similar to an iPhonemanufactured by Apple Inc. Although this illustration drawn to reflectthe appearance used in a particular smartphone, other configurations andoperating systems for smartphones will be known to those skilled in theart, and these illustrations are not intended to limit the invention toa particular type or style of smartphone.

The smartphone 100 may comprise an outer casing 200, one or more cameras218, one or more microphones 210-A and 210-B, a speaker 240, variousphysical buttons 212 for controls such as audio volume adjustment, ahome button 215 for controlling the functions of the phone (turning thephone on or off, answering the phone, reverting to the home screen,etc.) one or more cameras 218, and a touchscreen display 230. A dockingconnection 249 may also be provided to allow external inputs 119 andoutputs 144, as previously described, to be connected.

For most smartphone operating systems, there is typically a portion 232of the touchscreen display 230 reserved for displaying items dictated bythe phone operating system no matter which app is running, and thisportion 232 is used to display items such as the time of day, phonesignal strength, remaining battery life, etc. Other portions of thetouchscreen display 230 can be designated to display various icons 235,each representing a stored software program which can be executed by thephone. The graphical file for the icon, typically a file in a portablenetwork graphics format (also known as a .PNG file) will typically begoverned by the smartphone operating system, and will be stored on thestorage devices 150 such as flash memory built into the smartphone 100.Certain portions 233 of the display 230 may be designated to displayspecific, commonly used icons, while other portions may be moregenerally used.

In some embodiments of the invention, the software or “app” implementingthe methods of the invention will also have an icon 250. The executionof this software code can be initiated by the user touching thesmartphone touchscreen at the position the icon 250 is displayed,effectively pressing the “button” for the app to launch the program itrepresents.

For the methods of the invention, there are several embodiments that maybe designed, depending on the structure and detail present in the phonetree. For a phone tree such as the USCIS phone tree of Table I and FIG.1, the IVR options can be quite detailed and do not lend themselves torepresentation as simple single “buttons” on a phone display. Instead,an embodiment of the method illustrated in FIGS. 4 through 14 may beused to provide visual navigation through the phone tree.

III. A First Phone Tree Embodiment: Sequential Option Selection A. TheUSCIS Phone Tree

Table I (presented in 9 parts) presents an example for a phone tree fora government agency, in this case the United States Citizenship andImmigration Service (USCIS). This phone tree has several tiers ofresponses available to the user, in both English and Spanish. FIG. 1presents these same tiers of options for the USCIS Phone tree of Table Iin a graphical illustration.

In the Top Tier 001, the direct dial phone number is represented. Thisusually comprises a country code (in the case of the US, the singledigit “1”), followed by a 3 digit Area Code (in this case, the toll freeindicator “800”), a 3-digit prefix (in this case, “375”) and a 4-digitnumber (in this case, “5283”).

In the 1^(st) Tier 011, the first set of options presented to the calleris presented. In the case of the USCIS, The 1^(St) Tier choices for theuser allow the selection of language with English or Spanish as options.

In the 2^(nd) Tier 021, the further options provided when one of the1^(st) Tier options is selected are listed. In this case, seven optionsare provided: 0, 1, 2, 3, 4, 6, and 9. The same numerical options areprovided for English and Spanish. This Tier is the one generallyreferred to in this phone tree as the “Main Menu”.

In the 3^(rd) Tier 031, the further options provided when one of the2^(nd) Tier options is selected are listed. The number of choicesvaries, depending on the 2^(nd) Tier selection made. If “0” is selectedas the 2^(nd) Tier option, the only 3^(rd) Tier options are 1 and 9. If“1” is selected as the 2^(nd) Tier option, the 3rd Tier options are 1,2, 3, 4, 5, 6, 7 and 9. Note that a subset 037 of the 3^(rd) Tieroptions will be uniform options no matter what 2^(nd) Tier option hasbeen selected: “7” will cause the immediate 3^(rd) Tier message to berepeated, and “9” returns to the Main Menu (in this case, to the 2^(nd)Tier 021).

In the 4^(th) Tier 041, the further options provided when one of the3^(rd) Tier options is selected are listed. The number of choicesvaries, depending on the 3^(rd) Tier selection made. If “5” is selectedas the 3^(rd) Tier option after selecting “1” as the 2^(nd) Tier option,the only 4^(th) Tier options are 1, 7, 8 and 9. If “2” is selected asthe 3^(rd) Tier option after selecting “2” as the 2nd Tier option, the4^(th) Tier options are 1, 2, 3, 4, 5, 6, 7, 8 and 9.

TABLE I USCIS Phone Tree USCIS Top Tier: 1-800-375-5283 1^(st) Tier2^(nd) Tier 3^(rd) Tier 4^(th) Tier 1. To continue in English 0. If youcame to U.S. as a child and you're seeking information regarding the newprocess for deferred action . . . Individuals may be considered fordeferred action as a childhood arrival if they: were under the age of 31as of Jun. 15, 2012; came to the U.S. before reaching his or her 16thbirthday; have continuously resided in the U.S. since Jun. 15, 2007 upto the present time; were present in the U.S. on Jun. 15, 2012 and atthe time of making his or her request for consideration of deferredaction with USCIS; entered without inspection before Jun. 15, 2012, orhis or her lawful immigration status expired as of Jun. 15, 2012; arecurrently in school; have graduated or obtained a certificate forcompletion from high school; has obtained a general educationdevelopment certificate; or is an honorably discharged veteran of thecoast guard or armed forces of the U.S.; have not been convicted of afelony, significant misdemeanor, 3 or more other misdemeanors, and doesnot otherwise pose a threat to national security or public safety.Individuals may begin to request consideration of deferred action forchildhood arrivals on Aug. 15, 2012. Please do not file before Aug. 15.If you file early, your request will be rejected. For furtherinformation, please visit our website at uscis.gov/childhoodarrivals. 1.For more information . . . 6. To speak with a representative about thistopic. 7. To repeat this message. 8. To hear the previous message. 9. Toreturn to the Main Menu. 7. To repeat this message. 9. To return to theMain Menu. 6. For information about the new process to apply for aprovisional unlawful presence waiver USCIS is implementing a processchange that will allow certain immediate relatives of US citizens whoare physically present in the US and are seeking permanent residence toapply for and receive provisional unlawful presence waivers. USCIS willbegin acceptng applications for provisional unlawful presence waiversbeginning Mar. 4, 2013. To apply, you must submit form I-601A, theapplication for a provisional unlawful presence waiver. This form willbe available on our website at uscis.gov once this process change is ineffect. USCIS will not accept applications for provisional unlawfulpresence waivers until the effective date of Mar. 4, 2013. Anyapplications received before that date will be rejected, and theapplication will be returned to the sender. 1. For more information . .. For comprehensive information about the eligibility requirements andthe application process for the provisional unlawful presence waiverprogram, Please visit our website at uscis.gov. 6. To speak with arepresentative about this topic . . . 7. To repeat this message. 8. Tohear the previous message. 9. To return to the Main Menu. 7. To repeatthis message 9. To return to the Main Menu. Please listen carefully. Theoptions on our Main Menu have changed. Customer service representativesare available on this line from from 8 AM to 6 PM Monday throughFriday. 1. For immigration services, such as case status, forms,locating a USCIS office, civil surgeons, change of address, or if you'rean attorney, community based organization, or employer . . . 1. To checkthe status of an application that you have submitted, or to report aproblem with your application . . . 1. If you know your receipt number .. . 2. If you do not know what a receipt number is, if you do not knowwhere to find it, or if you have lost your receipt number . . . 7. Torepeat this message. 8. To hear the previous message. 9. To return tothe Main Menu. 2. For services and information for attorneys, CBOs, andemployers. 1. If you are an attorney, a credited representative, orcommunity based organization who has filed a G28 for a client . . . 2.If you are an employer enquiring about the status of a petition you havefiled on behalf of your employee . . . If you are an employer callingfor general information, please call the toll free number for employersat 1-800-375-2099. 7. To repeat this message. 8. To hear the previousmessage. 9. To return to the Main Menu. 3. To order forms from USCIS. 1.If you know the name or the number of the Form that you want to order .. . 2. If you are not sure which form you need, or if you have questionsabout filing a form . . . To see a complete list of USCIS forms and tosee which forms you can file electronically, please visit our website atuscis.gov. If you need to order 50 or more copies of a form, pleasecontact the Government Printing Office to inquire about which forms areavailable in large quantities. The phone number is 202-512-1800. 7. Torepeat this message. 8. To hear the previous message. 9. To return tothe Main Menu. 4. For the location of the USCIS field office or theApplication Support Center that serves your area . . . 1. Forinformation about the USCIS Field Office that serves your area . . . 2.For information about the Application Support Center that serves yourarea ... 3. To arrange for a special accommodation during a visit to aUSCIS facility . . . 7. To repeat this message. 8. To hear the previousmessage. 9. To return to the Main Menu. 1. For immigration services(cont.) 5. To find a civil sugeon in your area who can perform animmigration medical examination . . . Welcome to our Civil SurgeonLocator. To find a physician who can perform a immigration medicalexamination, we will ask you to enter a zip code for either: your home,place of work, or destination where you will be traveling. Anyauthorized civil surgeon may perform this examination. When you contactthe doctor's office, please inform them you need an USCIS immigrationmedical examination. 1. To proceed to our Civil Surgeon Locator. 7. Torepeat this message. 9. To return to the Main Menu. 6. To change youraddress . . . 1. If you have already moved and you need to change youraddress. 2. For general information about changing your address as anApplicant, petitioner, or beneficiary. 3. For general information aboutchanging your address as the financial sponsor for an immigrant foreignnational. 7. To repeat this message. 8. To hear the previous message. 9.To return to the Main Menu. 7. To repeat this message. 9. To return tothe Main Menu. 2. For information about immigration benefits andprocesses, such as interviews, biometrics, requests for evidence,background checks, or processing times . . . 1. For general filinginformation . . . 1. For filing information about naturalization. 2. ForPermanent Residents. 3. For US Citizens. 4. For Refugees and Asylees. 5.For Employers and Investors. 6. For Non-Immigrants. 7. To repeat thismessage. 8. To hear the previous message. 9. To return to the Main Menu.2. If you currently have a pending case, and want general informationabout interview or biometric appointments, requests for evidence,background checks, or case processing times . . . 1. If you wantinformation about biometrics appointments at your local ApplicationSupport Center . . . 2. If you want information about interviewappointments . . . 3. If you want information about requests forevidence . . . 4. If you want information about background checks . . .If you want information about case processing times, please visit ourwebsite at www.uscis.gov 2. For information about immigration benefitand processes (cont.) 2. If you currently have a pending case (cont.) 7.To repeat this message. 8. To hear the previous message. 9. To return tothe Main Menu. 3. For information about approved, denied, or rejectedcases. 1. If you are calling about an approved case. 2. If you arecalling about a denied case. 3. If you are calling about a rejectedcase. 7. To repeat this message. 8. To hear the previous message. 9. Toreturn to the Main Menu. 4. To hear current priority dates for immigrantvisas and the availability of diversity lottery numbers . . . 1. Forinformation about Visa cutoff dates. 2. If you are a US Citizen who isSponsoring a family member. 3. If you are a Permanent Resident who isSponsoring a family member. 4. If you are an Employer who is Sponsoringan employee. 5. If you are a Self Sponsoring Investor. 6. For theImmigrant Visa Lottery . . . 7. To repeat this message. 8. To hear theprevious message. 9. To return to the Main Menu. 7. To repeat thismessage. 9. To return to the Main Menu. 3. For Information about specialprograms and other resources, such as the Kaplan class action lawsuit,temporary protected status, the Freedom of Information Act, Privacy Act,or to report an immigration scam . . . 1. For information about thesettlement in the Kaplan Class Action Suit. 2. For information abouttemporary protected status program for Haiti. 3. For information abouttemporary protected status program for all other countries. 4. Forinformation about the Freedom of Information Act. 5. For other resources. . . 1. To hear how to report an immigration scam to federal or statelaw enforcement authorities . . . 2. To report a violation ofImmigration Law. 3. To hear contact information for other GovernmentAgencies . . . 4. To hear about representation by an attorney or otherparty in a matter before USCIS or the Board of Immigration Appeal . . .5. For information about the USCIS administrative site visit andverification program . . . 7. To repeat this message. 8. To hear theprevious message. 9. To return to the Main Menu. 7. To repeat thismessage. 9. To return to the Main Menu. 4. If you are experiencingtechnical difficulty with the electronic immigration system . . . 9. Torepeat this Main Menu, or to return to it at any time during your call.To end your call, hang up. 2. Para continuar en Español 0. Si ustedingreso a los Estados Unido como un infante y esta buscando informaciónsobre el nuevo proceso de acción diferida . . . Individuos pueden serconsiderados para acción diferida si ellos: fueron menores de 31 años deedad a partir del 15 de Junio del 2012; ingresaron a los Estados Unidosantes de los 16 años de edad; han residido continuamente en los EstadosUnidos por un período mínimo de 5 años antes del 15 de Junio del 2012, yhan residido continuamente en los Estados Unidios desde el 15 de Juniodel 2012; estuvieron presentes en los Estados Unidos el 15 de Junio del2012 y esta presente en los Estado Unidos en el momento en que somete susolicitud de acción diferida a USCIS; ingresaron sin inspección antesdel 15 de Junio del 2012, o su estatus legal de inmigración expiró el 15de Junio del 2012; actualmente asisten a la escuela; haberse graduado oobtenido un certificado de finalización de la escuela superior o cederun certificado de educación general GED en Inglés; haber servido en laguardia costera o las fuerzas armadas de los EE.UU.; no han sidoencontrados culpable de un delito grave, delito menos grave de caráctersignificativo, multiples delitos menos graves, o representar una amenazaa la seguridad nacional o la seguridad pública. Individuos puedensolicitar consideración para la acción diferida a partir del 15 deAgosto del 2012. Por favor no solicite antes del 15 de Agosto. Todas lassolicitudes recibidas antes del 15 de Agosto de 2012 serán rechazadas.Para más información, por favor visite nuestro sitio web enuscis.gov/childhoodarrivals. 1. Para obtener más información . . . 6.Para hablar con un representante sobre este tema 7. Para repetir estemensaje. 8. Para escuchar el mensaje anterior. 9. Para volver al menúprincipal. 7. Para repetir este mensaje. 9. Para volver al menúprinicipal. 6. Para obtener información sobre el nuevo proceso parasolicitar una extensión provisional por presencia illegal. USCIS estaimplementando un cambio de processo que permitirá a ciertos familiaresinmediatos de cuidadanos estadounidenses que estan fisicamente presentesen los Estadtos Unidos y buscan la residencia permanente, solicitar yrecibir una extensión provisional por presencia ilegal. UCIS comienza aaceptar solicitudes para una extensión provisional por presencia ilegala partir del 4 de Marzo del 2013. Para solicitud, debe de presentar elformulario I-601A, solicitud de extensión por precencia ilegal. Esteformulario estará disponible en nuestro sitio web uscis.gov una vez queel cambio de proceso este en efecto. USCIS no acepta solicitudes deextensión provisional de presencia ilegal hasta la fecha de efectividaddel 4 de Marzo del 2013. Todas las solicitudes recibidas antes de esafecha serán rechazadas y la solicitud será de vuelta al remitente . .. 1. Para obtener más información . . . Para información completa sobrelos requisites de elegibilidad y el proceso de solicitud para elprograma extensión provisional por presencia ilegal por favor visitenuestro sitio web en uscis.gov. 6. Para hablar con un representantesobre este tema 7. Para repetir este mensaje. 8. Para escuchar elmensaje anterior. 9. Para volver al menú principal. 7. Para repetir estemensaje. 9. Para volver al menú prinicipal. Escuche cuidadosamente, lasopciones del menú principal han cambiado. Los representantes delservicio al cliente están disponibles en esta línea desde las 8am hastalas 6pm de Lunes a Viernes. 1. Para servicios de inmigración comoestatus de caso, formularios, ubicar oficinas de USCIS, cirujanosciviles cambiar de dirección, o si usted es un abogado, una organizaciónde la comunidad, o empleador . . . 1. Para verificar el estatus de unasolicitud que ha enviado, o para reportar un problema con su solicitud .. . 1. Si usted sabe su número de recibo . . . 2. Si usted no sabe cuales el número de recibo, si no sabe donde encontrarlo, o si lo ha perdido. . . 7. Para repetir este mensaje. 8. Para escuchar el mensajeanterior. 9. Para volver al menú principal. 2. Para servicios einformación para abogados, organizaciones comunitarias, y empleadores .. . 1. Si usted es un abogado, representante acreditado, o organizacióncomunitaria que ha presentado un formulario G28 para un cliente . . . 2.Si usted es un empleador que solicita información sobre el estatus deuna solicitud que ha presentado en nombre de su empleado . . . Si ustedes un empleador que llama para obtener información general comuniquesecon el numero gratuito para empleadores al 1-800-357-2099. 7. Pararepetir este mensaje. 8. Para escuchar el mensaje anterior. 9. Paravolver al menú principal. 3. Para solicitar formularios del USCIS. 1. Sisabe el nombre o el número de formulario que desea solicitar . . . 2. Sino esta seguro sobre cual formulario necesita, o si tiene preguntasacerca de la presentación de un formulario . . . Para ver una listacompleta de los formularios de USCIS, como los formularios que puedepresentar electrónicamente, visite nuestro sitio web en uscis.gov. Sinecesita pedir 50 o más copias de un formulario, comuniquese con laoficina de imprenta gubernamental (Government Printing Office) parapreguntar acerca de cual formularios están disponibles en grandescantidades. El número es 202-512-1800. 7. Para repetir este mensaje. 8.Para escuchar el mensaje anterior. 9. Para volver al menú principal. 4.Para obtener la ubicación de la oficina de campo, o el centra de apoyode solicitudes del USCIS que presta servicio en su área . . . 1. Parainformación sobre la oficina local de USCIS que atiende a su area . . .2. Para información acerca del centra de apoyo de solicitudes queatiende a su área . . . 3. Para concertar un arreglo especial duranteuna visita a un centra de USCIS . . . 7. Para repetir este mensaje. 8.Para escuchar el mensaje anterior. 9. Para volver al menú principal. 1.Para servicios de inmigración (cont.) 5. Para encontrar un cirujanocivil en su area quien puede realizar un examen médico de inmigración .. . Bienvenido al localizador de cirujanos civiles. Para asistir enlocalizar un cirujano civil que puede hacer un examen médico deinmigración, tendrá que marcar el código postal de su hogar, de sutrabajo, o del lugar al cual esta viajando. Cualquier cirujano civil queesta autorizado puede hacer el examen. Cuando llame a la oficina deldoctor, favor de informaries que desea un examen médico de inmigracióndel USCIS. 1. Para proceder al localizador de cirujanos civiles. 7. Pararepetir este mensaje. 9. Para volver al menú principal. 6. Para cambiarsu dirección . . . 1. Si ya se ha mudado y desea cambiar su dirección.2. Para obtener información general sobre el cambio de su dirección,como solicitante, peticionario, o beneficiario. 3. Para obtenerinformación general acerca de como cambiar su dirección, comopatrocinador financiero de un inmigrante extranjero. 7. Para repetireste mensaje. 8. Para escuchar el mensaje anterior. 9. Para volver almenú principal. 7. Para repetir este mensaje. 9. Para volver al menúprincipal. 2. Para obtener información sobre los beneficios y procesosde inmigración como entrevistas, biométricos, solicitud de evidencia,verificación de antecedentes, o tiempos de procesamiento 1. Para obtenerinformación general sobre la presentación . . . 1. Para obtenerinformación de presentación para la naturalización. 2. Para residentespermanents. 3. Para ciudadanos Estadounidenses. 4. Para refugiados yasilados. 5. Para empleadores e inversionistas. 6. Para no-inmigrantes.7. Para repetir este mensaje. 8. Para escuchar el mensaje anterior. 9.Para volver al menú principal. 2. Si actualmente tiene un caso pendientey desea obtener información general sobre la entrevistas o las citasbiométricas, solicitudes de evidencias, verificaciones de antecedentes olos plazos de procedimiento del caso . . . 1. Si desea información sobrelas citas biométricas en el centra de soporte de solicitudes de sulocalidad . . . 2. Si desea información sobre las citas para entrevistas. . . 3. Si desea información sobre las solicitudes de evidencia . . .4. Si desea información sobre las verificaciones de antecedents . . . Sidesea información sobre los plazos para el procedimiento de los casos,visite nuestro sitio web www.uscis.gov 2. Para obtener información sobrelos beneficios y procesos de inmigración (cont.) 2. Si actualmente tieneun caso pendiente (cont.) 7. Para repetir este mensaje. 8. Para escucharel mensaje anterior. 9. Para volver al menú principal. 3. Para obtenerinformación sobre los casos aprovados, rechasados, o negados. 1. Si estallamando para averiguar sobre un caso aprobado. 2. Si esta llamando paraaveriguar sobre un caso negado. 3. Si esta llamando para averiguar sobreun caso rechazado. 7. Para repetir este mensaje. 8. Para escuchar elmensaje anterior. 9. Para volver al menú principal. 4. Para escuchar lasfechas actuales de prioridad para las visas de inmigrantes y ladisponibilidad de los números de la lotería de diversidad . . . 1. Paraobtener información sobre las fechas límite de las visas. 2. Si esciudadano de los Estados Unidos y patrocinador de un miembro familiar.3. Si es residente permanente y patrocinador de un miembro familiar. 4.Si es un empleador y patrocinador de un empleado. 5. Si es inversionistaauto patrocinado. 6. Para la lotería de visas de inmigrante. 7. Pararepetir este mensaje. 8. Para escuchar el mensaje anterior. 9. Paravolver al menú principal. 7. Para repetir est mensaje. 9. Para volver almenú principal. 3. Para información sobre programas especiales y otrosrecursos como el caso de la corte de las clases de Kaplan, servicios deprotección temporal, acto de libertad de información, acto deprivacidad, o para denunciar un fraude de inmigración . . . 1. Paraobtener información sobre la conciliación en la demanda de acción declase de Kaplan. 2. Para obtener información sobre el programa delestatus de protección temporal para Haiti. 3. Para obtener informaciónsobre el programa del estatus de protección temporal para todos losdemas paises. 4. Para obtener información sobre la ley de libertad deinformación. 3. Para información sobre programas especiales y otrosrecursos (cont.) . . . 5. Para otros recursos . . . 1. Para escucharcomo denunciar a un fraude de inmigración a las autoridades decontenimiento de la ley federales o estadales . . . 2. Para reportar unaviolación de la ley de inmigración. 3. Para escuchar la información decontacto de otras agencias del govierno . . . 4. Para conocer acerca dela representación por un abogado u otra parte en un caso presentado anteel USCIS, o la junta de apelaciones de inmigración . . . 5. Para obtenerinformación acerca del programa administrativo de visitas deverificación de USCIS . . . 7. Para repetir este mensaje. 8. Paraescuchar el mensaje anterior. 9. Para volver al menú principal. 7. Pararepetir este mensaje. 9. Para volver al menú principal. 4. Si estaexperimentando dificultades técnicas con el sistema electrónico deinmigración . . . 9. Para repetir este menú principal o regresar encualquier momento durante su llamada. Para finalizar su llamada,cuelgue.Note that a subset 047 of the 4^(th) Tier options will be uniformoptions no matter what 3^(rd) Tier option has been selected: “7” willcause the immediate 4^(th) Tier message to be repeated, “8” returns tothe previous tier (in this case 3^(rd) Tier 031), and “9” returns to theMain Menu (2^(nd) Tier 021).

For a phone tree with additional tiers of information, the subsequentselections would proceed in the same way, with additional selectionspossible for each entry at the previous tier. For the USCIS phone tree,there are no additional options for 4^(th) Tier 041 selections—everychoice at 4^(th) Tier 041 either plays a pre-recorded informationmessage to address a given question, or makes a connection with a liveperson in the identified department.

III. A First Phone Tree Embodiment: Sequential Option Selection B.Description of the Embodiment

FIGS. 4-7 represent the steps executed by one embodiment of the methodof the invention on a smartphone having a touchscreen after initiationby the user. The embodiment of the invention described herein is for usewith a detailed phone tree. In this example, the detailed USCIS phonetree of Table I and FIG. 1 is used.

As the initial step of the method of the invention, typically triggeredby the “pressing” of the smartphone icon 250 for the app, the softwarebegins execution, noted as the “Start” step 300. This typically involvesloading the program steps into active memory 105, and their execution bythe processor 101 built into the smartphone 100.

The next step 310 will typically be a display on the touchscreen 230 ofa confirmation to the user that indicates that the app has launched(often simply the display of a logo, or a larger version of the icon).This step may optionally provide a “button” for selecting an option thatinvokes a list of previously dialed or constructed calls, as well as anoption to proceed with the keypad for the IVR dialer.

If the user elects to proceed to the dialer, in the next step 320, anactive input screen is displayed with a keypad and a display field forthe user to begin making entries. An example of such a display screen isillustrated in FIG. 8. In this illustration, a portion of thetouchscreen display 230 represents a keypad 710 consisting of twelve“buttons” 712, which correspond to a typical touchtone phone entrydevice, comprising the digits 0 through 9 and the “Star” * and “Pound” #keys. The upper part of the touchscreen display 230 comprises a portionof the display 780 designated to display the input from the user, andmay additionally comprise a cursor 781 that may turn off and on, or“blink”, as a prompt to indicate readiness for input.

Below the keypad 710, the touchscreen display 230 may additionallycomprise an alphanumeric “button” 720 to switch to optional alphanumericinput mode (which would in turn typically have a corresponding numericindicator “button” to switch back to numeric input), a “Back” button 730to undo the user's immediate input, and an “OK” button 740 that may loadthe input into the Dialer Field once the user is done.

Returning to FIG. 4, The next step 330 comprises accepting data input331 from the user. The screen displayed in this mode is illustrated inFIG. 9. The input will typically be the entry of digits, such as 8 . . .0 . . . 0 . . . 3 . . . 7 . . . 5 . . . selected by pressing some of the“buttons” 712 with a finger 701. The input portion 780 of thetouchscreen display 230 may show the data previously entered, with thecursor 781 underscoring the character being currently entered.Alternatively, if the Text Entry “button” 720 has been pressed, theentry characters may be a text entry, such as “USCIS”, which may beentered using a virtual keyboard or other text entry method that areoften built into the operating system of the smartphone 100, and may bewell known to those skilled in the art.

Returning to FIG. 4, the next step 340 compares the user input to thephone tree data stored in the IVR database 777 available to the app.This IVR database 777 will typically comprise a number of phone treedata entries, such as the tree illustrated in FIG. 1 and Table I, aswell as metadata about the tree, such as the name of the agency orcompany whose tree is being represented. The IVR database may be writtenwith any prior art database storage techniques, such as SQLite, SQL CE,HanDBase, Filemaker Go, Filemaker Bento, DriodDB, Java DB, eSQL etc. andcan be accessed using standard database query languages such as SQL.

The comparison step 340 may execute automatically, with comparisonsbeing made any time data is entered by the user. Alternatively, thesoftware may be designed to make a comparison only once the “OK”“button” 740 has been pressed, or some other user indication ofreadiness to query the phone tree is entered. The comparison step 340may make a comparison of entered numeric digits to the digits of thephone tree (for example, recognizing an entry of 8 0 0 3 7 5 . . . aspossibly corresponding to the USCIS phone number 1-800-375-5283, or mayrecognize a keypad entry of U S C I . . . as corresponding to the USCISphone number 1-800-375-5283.

If the comparison step 340 does not find a match with an element in theIVR database 777 during a predetermined time period, several options arepossible. In some embodiments, if the input is not matched, the softwarecan simply wait until further input is provided until a match is found.However, in other embodiments, the system may employ a time evaluationstep 344 set for a predetermined time (for example, for 5 seconds) afterwhich, if there is no match found by the comparison step 340, the nextstep 346 may be a display of a “No Match” message (optionallyimplemented as a temporary pop-up screen), and a return to a blankkeypad entry screen as in step 320 (and as was illustrated in FIG. 8).If, on the other hand, the time evaluation step 344 detects additionaluser input 331 in the predetermined time, the system returns to theinput step 330 to accept the input, and again makes a comparison 340with the IVR database 777, either automatically or as triggered by theuser.

In this embodiment, if the comparison step 340 identifies at least onematch for the input data 331 with one or more entries in the IVRdatabase 777, the next step 350 is a display of the matching options tothe user. It should be noted that for a given entry, for example, 8 . .. 0 . . . 0, many phone trees may be available and displayed, and onlyfurther entry of the next digits 3 7 5 . . . will further narrow theoptions displayed from the IVR database 777. In some embodiments, theuser may designate a setting within the software so that identifiedmatching entries are only displayed after a certain number of digits(for example, 6 or 7 digits) have been entered.

An example of a screen display corresponding to this step 350 isillustrated in FIG. 10. In this illustration, the six digits 8 0 0 3 7 5have been entered by the user, and are displayed in the upper portion780 of the touchscreen display 230, with the cursor 781 under the mostrecently entered digit. In this example, it is assumed that the systemfinds three matching phone trees stored in the IVR database 777 thatcorrespond to these initial 6 digits. These are displayed as distinctfields 752 in the display 230, one for each of the matching IVR databaseentries. The fields may be simple text and numbers, or may also includevarious images, thumbnail files or corporate logos in the display. Eachfield 752 represents a virtual “button” that can be pressed to selectthe corresponding phone tree. In this illustration, the matching entriesare listed in numeric order by the Top Tier entry (the phone number) forthe phone tree. If there are too many entries for convenient displaywithin the screen, a standard “scroll bar” for the display may also beused, to allow the user to scroll down a long list of entries. In someembodiments, the matching entries may be listed in alphabetical orderaccording to the metadata associated with the phone tree. The “Back”button 730 may be used to return to the keypad entry screen to entermore digits if too many matches for convenient selection have beenfound.

Returning to FIG. 4, the next step 360 comprises accepting entry data361 from the user, in the form or “pressing” the “button” for one of thephone tree options displayed. The next step 362 checks if the “Back”“button” was the input, and if so, the program returns the display tothe input screen represented by the keypad entry step 330.

However, if the result of this selection step 360 is that one of thephone tree options has been selected, the next step 370 comprisesloading the phone number corresponding to the Top Tier of that phonetree option into the Dialer Field 800. The dialer field 800 may be aseparate memory register designated by the app specifically for thispurpose, or in some embodiments may be a designated string variablewithin the program.

After the phone tree has been selected and the data for the phone treeTop Tier loaded into the Dialer Field, in the next step 380 the phonescreen is changed to now display the contents of the Dialer Field 800.An example of a screen display corresponding to this step is illustratedin FIG. 11, which shows the contents of the Dialer Field 800 in aportion 785 of the touchscreen display 230 in the upper part of thescreen, and also comprising in this embodiment a pop-up screen 795containing two “buttons” 796 & 797, with one “button” 796 giving theuser the option to “Call” the number as loaded into the dialer field,and the other “button” 797 marked “Tree” that allows the user tocontinue building the number based on the phone tree. Varioustechniques, such as a change in the size, shape, color, font, graphicselections etc. may be used to allow the user to recognize that thecontents of the portion of the display 785 showing the contents of theDialer Field 800 is from the IVR database 777 and not the same displayas the user input display 780, even though the actual digits may be thesame or similar to those displayed in the input screen 780.

Returning to FIG. 4, the next step 390 comprises accepting entry data391 from the user, in the form or “pressing” one of the two “buttons”displayed—“Call” or “Tree”. If the choice is to “Call”, the programpasses control to steps represented by “D” in FIG. 4, which initiate thephone and call the number in the dialer field, and are illustrated indetail in FIG. 7. If the choice is “Tree”, the program passes control tosteps represented by “B” in FIG. 4, which allow the user to continue tobuild the number in the dialer field, and are illustrated in detail inFIG. 5.

Turning now to FIG. 5, after the “Tree” option has been selected, asmentioned above, program passes control to steps presented here thatallow the user to continue to build the number in the Dialer Field 800.The next step 420 is to display the dialer field along with the 1^(st)Tier options for the phone tree.

A typical screen display corresponding to this step is illustrated inFIG. 12. The upper part 785 of the touchscreen display 230 illustratesthe contents of the Dialer Field 800, but now are illustrated with acursor 786 which may optionally be blinking or otherwise indicating thatthe software is now accepting input from the user. The location of thecursor 786 may be used to illustrate the Tier from which the options arebeing selected. In some embodiments, a more specific designation of theTier of the Phone Tree may be provided, such as a heading such as“1^(st) Tier” to label the options presented. In this illustration, thetwo 1^(st) Tier Options 791 from the USCIS Phone Tree are presented as“buttons” that may be “pressed” by the user to select the additionalmaterial that will be added to the contents of the Dialer Field 800.

Returning to FIG. 5, the next step 430 comprises accepting entry data431 from the user, in the form or “pressing” one of the “buttons”displayed for the 1^(st) Tier phone tree options. For the exampleillustrated in FIG. 1 and Table I (the USCIS phone tree), as well as theillustration in FIG. 12, the 1^(st) Tier Options 011 are:

1. To continue in English.

2. Para continuar en Espanol.

After one of these options has been selected, the next step 440generates a first data string 801 corresponding to the digits to beappended to the Dialer Field 800, typically represented by one or morecommas (depending on the length of pause needed for the IVR system) andthe digit of the selection. For the example of the USCIS phone tree,selecting the option of “1. To Continue in English” will append the bitstream “, 1” 801 to the number in the dialer field.

Once the 1^(st) Tier bit stream selection 801 has been appended to theDialer Field 800, the next step 450 determines if there is an additionaltier of options in the selected phone tree. If there are no options foradditional tiers available under the selection made for the 1^(st) Tier,the next step 453 may be an optional display of a message to the userthat the “Entry is Complete”, or that “All Tiers Filled”, and theprogram passes control to steps represented by “C₁” in FIG. 5 thatconclude the interaction with the stored Phone Tree, and which areillustrated in detail in FIG. 6.

However, if there are additional options for tiers available, the nextstep 460 is to display the present contents of the Dialer Field 800along with the next Tier options for the phone tree.

A typical smartphone screen display corresponding to this step for the2^(nd) Tier options for the USCIS Phone Tree is illustrated in FIG. 13.The upper part of the display 785 again illustrates the contents of theDialer Field 800, which now have the 1^(st) Tier input appended, so thecursor 786 is now placed at the location where the 2^(nd) Tier bitstream will be appended. In some embodiments, a more specificdesignation of the Tier of the Phone Tree may be provided, such as aheading such as “2^(nd) Tier” to label the options presented. In thisillustration, three of the six 2^(nd) Tier Options 792 from the USCISPhone Tree are presented as “buttons” that may be “pressed” by the userto select the additional material that will be added to the contents ofthe Dialer Field 800. A partly filled scroll bar 799 is also illustratedto the right of the options, indicating that there are more 2^(nd) Tieroptions that may be made visible by using the scroll controls typicalfor this smartphone operating system.

For the example illustrated in FIG. 1 and Table I (the USCIS PhoneTree), as well as the illustration in FIG. 13, the 2^(nd) Tier Options021 are:

-   -   0. If you came to US as a child and you're seeking information        regarding the new process for deferred action . . . .    -   1. For immigration services, such as case status, forms,        locating a USCIS office, civil surgeons, change of address, or        if you're an attorney, community based organization, or employer        . . . .    -   2. For Information about immigration benefits and processes,        such as interviews, biometrics, requests for evidence,        background checks or processing times . . . .    -   3. For Information about special programs and other resources,        such as the Kaplan class action lawsuit, temporary protected        status, the Freedom of Information Act, Privacy Act, or to        report an immigration scam . . . .    -   4. If you are experiencing technical difficulty with the        electronic immigration system . . . .    -   6. For information about the new process to apply for a        provisional unlawful presence waiver . . . .        The IVR option 9 for the 2^(nd) Tier, which gives the caller the        option to repeat the menu options, is not presented in the        visual phone tree, since the parallel presentation of options in        the visual IVR system eliminates the need to hear a menu again.

Returning again to FIG. 5, the next step 470 comprises accepting entrydata 471 from the user, in the form or “pressing” one of the “buttons”displayed for the phone tree options, or “pressing” the “button”representing the “Call” option or the “button” representing the “Store”option. In the next step 480, if either the “Call” or “Store” option hasbeen selected, the program passes control to steps represented by “C₂”in FIG. 5 that complete the creation of the number in the Dialer Field800, and which are illustrated in detail in FIG. 6. However, if one ofthe 2^(nd) Tier phone tree options has been selected, then the next step490 generates a second data string 802 corresponding to the requireddigits to be appended to the phone number in the Dialer Field 800,typically represented by one or two commas (depending on the length ofpause needed for the IVR system) and the digit of the selection. For theexample of the USCIS phone tree, selecting the option “2. ForInformation about immigration benefits and process, such as interviews,biometrics, requests for evidence, background checks or processing times. . . ” will append the bit stream, “, 2” 802 to the number in thedialer field.

Once the 2^(nd) Tier option 802 has been selected and appended to theDialer Field 800, the program proceeds back to the step 450 to determineif there is an additional tier of options in the selected phone tree. Ifthere are no options for additional tiers available under the selectionmade for the 2^(nd) Tier, the next step 453 may be an optional displayof a message to the user that the “Entry is Complete”, or that “AllTiers Filled”, and the program passes control to steps represented by“C₁” in FIG. 5 that conclude the use of the Phone Tree, and which areillustrated in detail in FIG. 6. However, if there are additionaloptions for tiers available, the next step 460 is to display the dialerfield along with the next Tier options for the phone tree.

For the example illustrated in FIG. 1 and Table I (the USCIS phonetree), the 3^(rd) Tier Options 031 after option 1 for the 1^(st) Tierand 2 for the 2^(nd) Tier have been selected are:

-   -   1. For general filing information . . . .    -   2. If you currently have a pending case, and want general        information about interview or biometric appointments, requests        for evidence, background checks, or case processing times . . .        .    -   3. For information about approved, denied, or rejected cases . .        . .    -   4. To hear current priority dates for immigrant visa and the        availability of diversity lottery numbers . . . .

The subset of repeating options 037 (corresponding to entering 7 or 9)are not presented in this list, since the parallel presentation ofoptions in the visual IVR system eliminates the need to hear a menuagain.

The next step 470 comprises accepting entry data 471 from the user, inthe form or “pressing” one of the “buttons” displayed for the phone treeoptions, or “pressing” the “button” representing the “Call” option orthe “button” representing the “Store” option. In the next step 480, ifeither the “Call” or “Store” option has been selected, the programpasses control to steps represented by “C₂” in FIG. 5 that complete thecreation of the number in the Dialer Field 800, and which areillustrated in detail in FIG. 6. However, if one of the 3^(rd) Tierphone tree options has been selected, then the next step 490 generates athird data string 803 corresponding to the required digits to beappended to the phone number in the Dialer Field 800, typicallyrepresented by one or two commas (depending on the length of pauseneeded for the IVR system) and the digit of the selection. For theexample of the USCIS phone tree, selecting the option of “1. For generalfiling information” will append the bit stream, “, 1” 803 to the numberin the dialer field.

Once the 3^(rd) Tier option 803 has been selected and appended to theDialer Field 800, the program proceeds back to the step 450 to determineif there is an additional tier of options in the selected phone tree. Ifthere are no options for additional tiers available under the selectionmade for the 3^(rd) Tier, the next step 453 may be an optional displayof a message to the user that the “Entry is Complete”, or that “AllTiers Filled”, and the program passes control to steps represented by“C₁” in FIG. 5 that conclude the use of the Phone Tree, and which areillustrated in detail in FIG. 6. However, if there are additionaloptions for tiers available, the next step 460 is to display the dialerfield along with the next Tier options for the phone tree.

For the example illustrated in FIG. 1 and Table I (the USCIS phonetree), the 4^(th) Tier Options 041 after option 1 for the 1^(st) Tier, 2for the 2^(nd) Tier and 1 for the 3^(rd) Tier have been selected are:

1. For filing information about naturalization . . . .

2. For permanent residents . . . .

3. For US Citizens

4. For refugees and asylees

5. For employers and investors . . . .

6. For non-immigrants . . . .

The set of repeating options 047 (corresponding to entering 7, 8, or 9)are not presented in this list, since the parallel presentation ofoptions in the visual IVR system eliminates the need to hear a menuagain.

The next step 470 comprises accepting entry data 471 from the user, inthe form or “pressing” one of the “buttons” displayed for the phone treeoptions, or “pressing” the “button” representing the “Call” option orthe “button” representing the “Store” option. In the next step 480, ifeither the “Call” or “Store” option has been selected, the programpasses control to steps represented by “C₂” in FIG. 5 that complete thecreation of the number in the Dialer Field 800, and which areillustrated in detail in FIG. 6. However, if one of the 4^(th) Tierphone tree options has been selected, then the next step 490 generates afourth data string 804 corresponding to the required digits to beappended to the phone number in the Dialer Field 800, typicallyrepresented by one or two commas (depending on the length of pauseneeded for the IVR system) and the digit of the selection. For theexample of the USCIS phone tree, selecting the option of “4. Refugeesand Asylees” will append the bit stream, “, 4” 804 to the number in thedialer field.

Once the 4^(th) Tier option 804 has been selected and appended to theDialer Field 800, the program proceeds back to the step 450 to determineif there is an additional tier of options in the selected phone tree. Ifthere are no options for additional tiers available under the selectionmade for the 4^(th) Tier, the next step 453 may be an optional displayof a message to the user that the “Entry is Complete”, or that “AllTiers Filled”, and the program passes control to steps represented by“C₁” in FIG. 5 that conclude the use of the Phone Tree, and which areillustrated in detail in FIG. 6. However, if there are additionaloptions for tiers available, the next step 460 is to display the dialerfield along with the next Tier options for the phone tree. For theexample of the USCIS phone tree, there are at most 4 Tiers, so theprogram will proceed to the concluding options, indicated by “C₁” andillustrated in FIG. 6.

Turning now to FIG. 6, if either all Tiers have had bit streams appendedto the Dialer Tree 800, or the “Call” or “Store” options have beenselected, the program passes control to steps presented here. If theDialer Field has been completed (for the USCIS example presented here,the number in the Dialer Field 800 will now consist of the dialstring“1,8003755283,1,2,1,4” representing the number to call to provide accessfor filing information for Refugees and Asylees), the next step 510 isto display the assembled number in the Dialer Field 800. This step, oran additional step 520, may also present the “Call” or “Store” options(as was illustrated in FIGS. 12 and 13) to the user options for the useras “buttons”.

A typical smartphone screen display corresponding to this step for theUSCIS Phone Tree is illustrated in FIG. 14. The upper part of thedisplay 785 again illustrates the contents of the Dialer Field 800,which is now complete with 1^(st), 2^(nd), 3^(rd) and 4^(th) Tier inputappended, so there is no cursor displayed. The “Call” and “Store”“buttons” 750 and 770 are also present, allowing the user to eitherinvoke the phone operations using the number in the Dialer Field 800, orto store the contents of the Dialer Field 800 for future use.

Returning to FIG. 6, the next step 530 comprises again accepting input531 from the user, in the form or “pressing” one of the “buttons”displayed.

This now places the software in a similar state to that invoked bypressing the “Call” or “Store” buttons in input step 480 of FIG. 5. Innext step 540, if the “Call” option has been selected either as anoption 480 during the construction of the Dialer Field 800, or after allDialer Field options have been exhausted, the control of the programbranches to the dialing options, indicated by “D” in FIG. 6, andillustrated in more detail in FIG. 7.

If the “Store” option has been selected, in the next step 550 theprogram provides access to a database, such as a typical addressdatabase 788 provided with smartphones, for storing the assembled phonenumber in the Dialer Field 800. The next step 560 comprises acceptinginput 561 from the user, typically in the form of identifyinginformation to be recorded as metadata about the phone number, such asan organization name and/or department. In the next step 570, both thenumber from the Dialer Field and the entered metadata 561 may be storedin the address database 788. For the example previously illustrated, theaddress database may store the dialstring “1,8003755283,1,2,1,4” alongwith identifying information such as “USCIS Refugee Info.” entered bythe user.

Once the data is stored, the program proceeds to the next step 580 inwhich the Dialer Field is displayed and the user has the option to“Call” the assembled number in the Dialer Field, or to “Close” the app.These options for the user will be presented as “buttons”. In thisexample, the options are to “Call” using the number in the Dialer Field800, or to “Close” the app.

This step 580 then accepts input 581 from the user, in the form or“pressing” one of the “buttons” displayed. In the next step 590, if the“Call” option has been selected, the program branches to the dialingoptions, indicated by “D” in FIG. 6, and illustrated in more detail inFIG. 7. If the “Close” option has been selected, in the next step 660the program returns to the initial dialer screen 310, as was illustratedin FIG. 8 or, in some embodiments, may simply shut down the app,returning the phone to the home screen, as was illustrated in FIG. 3

Turning now to FIG. 7, which represents the steps indicated by the “D”noted in FIGS. 4 and 6. Once the Dialer Field 800 has had the numberassembled, the next step 610 is to take the assembled dialstring fromthe Dialer Field 800 and pass it to the phone dialer. This will invokethe standard phone dialing commands packaged within the operating systemof the smartphone, and will make the phone call through the transceiverbuilt within the smartphone. In some embodiments, once the call iscompleted, the control of the phone will be returned to the app, whichhas remained operational in the background. The phone call will thendisplay a closing screen, which may say “Thank you for making your callwith Visual IVR”, and present the user with options to “Make anothercall”, or to “Close” the app In other embodiments, the app will closeonce the dialstring has been constructed and transferred to the phonedialer, and when the call is done, the phone will return to thesmartphone's home state.

In the next step 620, the normal dialing interface is displayed with two“buttons” provided as options: “Confirm” or “Cancel”. The next step 630comprises accepting input 631 from the user, in the form or “pressing”one of the “buttons” displayed.

In the next step 640, the program interprets this input. If the “Cancel”“button” was selected, the program passes control as indicated by the“F” noted in FIG. 7 and reverts to the “Call” or “Close” optionsindicated the prior step 580 in FIG. 6 (and, since the user chooses notto call, presumably the user would immediately select the “Close”option).

However, if the “Confirm” “button” has been selected, in the next step650 the phone connection is initiated using standard commands in thesmartphone operating system API and the number from the Dialer Field 800is dialed. The number will reach the desired phone tree, and theappended suffixes with their suitably attached “pauses” (represented bycommas) will reach the selected entry in the phone tree with no need tolisten repeatedly to complex options or wait to manually enter digitsafter listening to a message.

With the initiation of the phone call in this step 650, the creation ofthe dialstring by the app is done. In some embodiments, in the finalstep 660, the app reverts to a standby state in the background while thephone call proceeds, and once the end of the call is detected, revertsto the initial start screen 310 as shown in FIG. 8. In otherembodiments, the app remains operating in the background, but thesmartphone displays the home screen for the smartphone.

IV. A Second Phone Tree Embodiment: Graphical Option Selection A. TheGEICO Phone Tree

In the First Embodiment presented above, the user makes selectionsthrough displays on the phone in the order that they would be made ifthe user were listening to the phone tree—first, a 1^(st) Tier selectionis made, followed by a 2^(nd) Tier selection, followed by a 3^(rd) Tierselection, etc. until the user proceeds to dial, or the options areexhausted.

This type of iterative selection is useful if the options are lengthy orcomplex and do not lend themselves to simple graphical display on asmartphone screen. However, not all phone trees have entries that arethis complex. Table II (in 3 parts) presents an example for a phone treefor GEICO Insurance. As before, there are several tiers to the phonetree. However, most of these entries are considerably shorter than theoptions in the USCIS phone tree. FIGS. 15A, 15B, and 15C present thesesame tiers of options for GEICO Insurance in a graphical illustration.

Referring to Table II and FIG. 15A, in the Top Tier 002, the direct dialphone number is represented. This usually comprises a country code (inthe case of the US, the single digit “1”), followed by a 3-digit AreaCode (in this case, the toll free indicator “800”), a 3-digit prefix (inthis case, “841”) and a 4-digit number (in this case, “3000”).

In the 1^(st) Tier 012, the first set of options presented to the calleris shown. In the case of the GEICO Phone Tree, as listed in Table II,there are seven 1^(st) Tier options to choose from. Of these, options 0,4, 5, 6, and 7 have no additional Tiers beneath them. Option 0, torepeat the present menu, is not illustrated in FIG. 15A

In the 2^(nd) Tier 022, the further options provided once one of the1^(st) Tier options has been selected are shown. As listed in Table II,up to nine options are possible: 0, 1, 2, 3, 4, 6, 7 and #. Note that asubset of the 2^(nd) Tier options will be uniform options no matter what2nd Tier option has been selected: “0” will cause the immediate 2nd Tiermessage to be repeated, and “#” returns to the previous tier (in thiscase, to the 1^(st) Tier). These uniform options have not been includedin the illustration of FIG. 15A.

TABLE II GEICO Phone Tree GEICO Top Tier: 1-800-841-3000 1^(st) Tier2^(nd) Tier 3^(rd) Tier 4^(th) Tier 1. If you're calling in regard to aclaim, an accident, or emergency roadside service Please have yourpolicy or claim number ready. 1. For emergency road service . . . 2. Forour mechanical breakdown claims department not involving an accident . .. 3. For a glass claim with no additional damage . . . 4. For anautomobile, motorcycle, or RV claim 1. If you are reporting accident orclaim for first time . . . 2. If you would like the GEICO mailingaddress or fax number The address for claims is: GEICO 1 GEICO West POBox 509119 San Diego, CA 92150-9119 The Fax number is 619-819-4004Please include the adjuster's name and the claim number on allcorrespondence. 0. To repeat this menu #. To return to the prior menu 3.If you are a medical provider seeking information on a medical claim 4.If you are calling about a claim that has already been reported 1. Ifyou know your party's extension or last name 2. Otherwise . . . #. Toreturn to the prior menu 0. To repeat this menu #. To return to theprior menu 5. For a homeowners claim 1. For a Travelers Claim 2. For aLiberty Mutual Claim 3. For a Fidelity Claim 4. For an AFI claim 5. Forother homeowner claims 0. To repeat this menu #. To return to the priormenu 6. For a boat claim 1. If you have a ski safe policy or policybegins with S. 2. For a seaworthy policy, or if policy begins with BSP3. For Travelers 0. To repeat this menu #. To return to the prior menu0. To repeat this menu #. To return to the prior menu 2. If you wouldlike a quote for a new policy or to restart a cancelled policy . . . 1.To insure your personal auto 2. If you or spouse are active duty, guard,reserve or retired military 3. If you have had a policy with GEICO inpast 6 months 4. For an existing GEICO policy 5. If you have alreadyreceived a quote 6. All others . . . 0. To repeat this menu #. To returnto the prior menu 2. If you would like a quote for a new policy . . .(cont.) 2. For business or commercial insurance 1. If you are calling toobtain insurance for fewer than 5 business vehicles 2. In you needinsurance for more than 5 business vehicles 3. For business orprofessional liability 4. For business property 5. For workerscompensation 0. To repeat this menu #. To return to the prior menu 3.For motorcycle or ATV insurance 1. If you've had a GEICO motorcycle orATV policy that has been cancelled within in last 6 months 2. For aquote on new motorcycle or ATV policy #. To return to the prior menu 4.For home or renter's insurance Please enter your property's Zip Code . .. 1. For home, renters or condo insurance 2. For mobile home insurance3. For flood insurance 9. To repeat these options #. To return to theprior menu 5. For watercraft including boats or jet skis 1. If you arecalling about a previous quote 2. If you are calling about a new quote#. To return to the prior menu 6. For RV or travel-trailer insurance 1.If you're an existing GEICO auto or RV policy holder, or if you’ve had aGEICO policy in the last 6 months 2. For a quote on a new RV ortravel-trailer policy #. To return to the prior menu 7. For a quote fora new policy for other products 1. For a new umbrella policy 2. For aflood policy 3. For identity theft protection 4. For antique orcollector cards 5. For snowmobiles 6. For term life insurance 7. Forother products 0. To repeat this menu #. To return to the prior menu 0.To repeat this menu # To return to the prior menu 3. To setup or updatean automatic payment 1. To setup or update a debit or credit cardaccount 2. To setup or update a checking account # To return to theprior menu 4. To make or schedule a payment 5. To check recent payments,current amount due, or due date 6. To request an insurance card 7. Tospeak with a professional insurance agent for service on an existingpolicy 0. To repeat this menu

In the 3^(rd) Tier 032, the further options provided once one of the2^(nd) Tier options has been selected are shown. The number of optionsvaries, depending on the 2^(nd) Tier selection made. If “1” was selectedas the 2^(nd) Tier option, there are no additional 3^(rd) Tier optionsunique to “1” in the 2^(nd) Tier—selecting option “1” in this case makesa direct connection to Emergency Roadside Service. However, if “4” wasselected as the 2^(nd) Tier option, the 3^(rd) Tier options, as listedin Table II, are 0, 1, 2, 3, 4 and #. The relationship between optionsin the Tiers are represented in FIG. 15A by vertical lines. Note that,as listed in Table II, a subset of the 3^(rd) Tier options will beuniform options no matter what 3^(rd) Tier option has been selected: “0”will cause the immediate 2^(nd) Tier message to be repeated, and “#”returns to the previous tier (in this case 2^(nd) Tier). These uniformoptions have not been included in the illustration of FIG. 15A.

Likewise, in the 4^(th) Tier 042, the further options provided once oneof the 3^(rd) Tier options has been selected are shown. Only a selectionof “4” in the 3^(rd) Tier leads to additional options in 4^(th) Tier,and in this case, as listed in Table II, the 4^(th) Tier options are 0,1, 2 and #. Note that a subset of the 4^(th) Tier options will beuniform options no matter what 4^(th) Tier option has been selected: “0”will cause the immediate 4^(th) Tier message to be repeated, and “#”returns to the previous tier (in this case, to the 3^(rd) Tier). Theseuniform options have not been included in the illustration of FIG. 15A.

The relative simplicity of the entries in this phone tree makes itamenable to representation as a graphical object, similar to therepresentation in FIGS. 15A, 15B and 15C. In FIG. 15A, the GEICO TopTier is represented by a single long rectangle 002 stretching across theentire graphical representation. Underneath this single Top Tierrepresentation 002 is a set of seven smaller rectangles 012,representing the 1^(st) Tier options. Underneath the 1^(st) Tier options012 are a set of rectangles 022 representing the 2^(nd) Tier options,with a subset of rectangles of the set 022 beneath each corresponding1^(st) Tier option. Underneath the 2^(nd) Tier options 022 are a set ofsquares 032 representing the 3^(rd) Tier options, with a subset ofrectangles of the set 032 beneath each corresponding 2^(nd) Tier option.Underneath the 3^(rd) Tier options 032 are a set of dots 042representing the 4^(th) Tier options, with a subset of dots of the set042 beneath each corresponding 3^(rd) Tier option.

In this representation, details for the 1^(st) Tier options are shown,but only numbers for the 2^(nd) Tier options are displayed, and detailfor the 3^(rd) and 4^(th) Tiers cannot be seen at all. However, usingstandard prior art programming interfaces, such as the standard userinterface commands for zoom (e.g. pinch-to-zoom, scroll bars, +/− zoomcontrols) for the graphic display, the detail displayed in a graphicaldisplay is allowed to scale and become visible or hidden as the image ismagnified or demagnified.

FIG. 15B illustrates a zoomed version of the options for the 1^(st) Tierselection of “1” 012-1, in which the 2^(nd) Tier options 022-1 are nowlarge enough to be legible, and the entry information can now be legiblydisplayed. In this case, however, only the numbers for the 3^(rd) Tieroptions 032-1 are displayed, and the detail of the 4^(th) Tier 042 stillcannot be seen.

Again using built-in zoom functions for the graphic information, thisdetail can be made visible. FIG. 15C illustrates a zoomed version of theoptions for the 2^(nd) Tier selection of “4” 022-1-4, in which the3^(rd) Tier options 032-1-4 are now large enough to be legible. In thiscase, the entries for the 4^(th) Tier options 042-1-4-4 are alsodisplayed, since there are only two that need to be displayed at thesame time. If more 4^(th) Tier options existed, further detail could beviewed by additional graphical zooming.

IV. A Second Phone Tree Embodiment: Graphical Option Selection B.Description of the Embodiment

Many of the steps that will be executed in an embodiment of theinvention using a graphical phone tree will be similar or the same asthe steps executed for the detailed phone tree, as already described. Asin the previous embodiment, illustrated in FIG. 4, the software beginsexecution with the initial step by the user “pressing” the smartphoneicon for the app, noted as the “Start” step 300. This typically involvesloading the program steps into active memory, and their execution by themicroprocessor built into the smartphone.

The initial steps of this embodiment will follow the steps alreadypresented in FIG. 4, in which the user inputs digits or characters untilthey are recognized as corresponding to a phone tree whose data has beenstored in the IVR database 777. However, in this embodiment, instead ofthe program steps passing control to the steps represented in FIG. 4 by“B” and further illustrated in FIG. 5, at this same step (marked “B” inFIG. 4), the program passes control to code that executes the stepsindicated by the character “B₁”, which are illustrated in FIG. 16.

Turning now to FIG. 16, in the next step 1610 of this embodiment, thedisplay will show the Dialer Field along with the graphic representationof the Phone Tree. The graphic display will be configured as a set ofdynamically sized objects that can act as “buttons”, such that when animage of a “button” on the display is larger than a predeterminedamount, it becomes active as an input designator. Techniques forcreating a zoomed display of a graphic representation of a dataset, anduser interactions with the display using, for example, a “two-finger”zoom technique, are common in mapping and other smartphone apps, andwill be known to those skilled in the art.

The next step 1620 is to accept user input 1621 moving within and“zooming” the graphic on the display, which the user will do to explorethe phone tree until the desired option is identified and made largeenough to become an active “button”. This designation of active orinactive may be made by any number of common techniques, such as the achange of color or contrast for the font in the “button” text (e.g.having text for an inactive “button” be represented as grey, while textfor an active “button” be designated as black) or by having a graphicdesignator, such as an outline or a change in color intensity, appear asthe “button” becomes active.

FIG. 17 illustrates a smartphone with the display showing an example ofa graphic interface for the Phone Tree according to the invention atthis step 1620 of the flow of FIG. 16. The example used for thisillustration is a portion of the GEICO Phone Tree as was shown in TableII and FIGS. 15A, 15B, and 15C. The smartphone display 230 shows agraphic representation 971 for one of the 1^(st) Tier options (in thisexample, option “1”), graphic representations (or portions thereof) 972,972-4 for three of the 2^(nd) Tier options below the displayed 1^(st)Tier option 971. Below the displayed 2^(nd) Tier option 972-4 (which islabeled “4. Automobile, Motorcycle, RV”), the display also shows agraphic representation 973 for four of the 3^(rd) Tier options. Thelarger graphical representations 971, 972, 972-4 are shown withdouble-lined borders as an example of an indication that they are“active”, i.e. can be “pressed” to make a selection, while the smallergraphical representations for the 3^(rd) Tier options 973 are shown witha single border to indicate they are too small to be “active”.

Because this graphic display is intended to be “zoomed” to allow theuser to identify their selection, various options to facilitate zoomingmay also be added to the display. A graphic to allow control of zoomingfunctions, such as the box pair 992 marked with “+” and “−” is a commoninterface for a zoom command. A vertical scroll bar 999 and a horizontalscroll bar 989 are also shown as possible interface graphics to allownavigation within the graphical object. Zoom control and navigation mayalso be achieved using various “two-finger” interactions such as atouchscreen “pinch-zoom” (moving two touched points closer or fartherapart on the touchscreen to zoom in or out), or by various“hold-and-move” techniques for interacting with the screen fornavigation.

Also displayed are “Call” and “Store” “buttons” 950 and 970, analogousto those described in the previous embodiment.

Returning to FIG. 16, once the user has identified the desired selectionin the phone tree, in the next step 1630, the user “presses” the“button”, generating an input signals 1631 that is interpreted by theprogram. The interpretation will typically follow a sequence of decisionsteps, examining the input and analyzing the nature of the data stream.Such a decision tree may follow the steps described below.

In the first decision step 1640, the program determines if the “button”pressed is in the 1^(st) tier of the phone tree. If the answer is YES,in the next step 1643 the phone tree appends a string of bits 811corresponding to the 1^(st) tier digits (as illustrated for the GEICOtree, 1^(st) Tier selection is “1” corresponds to “Regarding a Claim”,and the appended bits will typically represent a comma and a “1” (,1).For some phone trees, appending two commas (,,1) or more may be neededto accommodate predictable delays in the phone tree response time. Oncethe string of bits 811 has been appended to the dialer field, thesoftware can proceed to the steps indicated by “C₁” in FIG. 16, and thatcorrespond to the steps already illustrated in FIGS. 6 and 7 of theprevious embodiment.

If the answer to step 1640 is NO, the program proceeds to the seconddecision step 1650.

In the second decision step 1650, the program determines if the “button”pressed is in the 2^(nd) tier of the phone tree. If the answer is YES,in the next step 1653 the phone tree appends a string of bits 812corresponding to the 2^(nd) tier digits (as illustrated for the GEICOtree, 1^(st) Tier selection “1” corresponds to “Regarding a Claim” and2^(nd) Tier selection “4” corresponds to “Automobile, Motorcycle, orRV”, and the appended bits will typically represent a comma and a “1”followed by a comma and a “4” (,1,4). For some phone trees, appendingtwo commas (,,1,,4) or more may be needed to accommodate predictabledelays in the phone tree response time. Once the string of bits 812 hasbeen appended to the dialer field, the software can proceed to the stepsindicated by “C₁” in FIG. 16, and that correspond to the steps alreadyillustrated in FIGS. 6 and 7 of the previous embodiment.

An example of a selection made at the 2^(nd) Tier is illustrated in FIG.18. The Phone Tree, in this example the GEICO Phone Tree of Table II andFIGS. 15A, 15B, and 15C, is illustrated, and the user's finger 701 ispressed against a selected “button”, in this case a 2^(nd) Tierselection 972-4. The number in the display 985 corresponding to theDialer Field has been updated with the bit stream “,1,4” to reflect theselection.

If the answer to step 1650 is NO, the program proceeds to the thirddecision step 1660.

Returning to FIG. 16, in the third decision step 1660, the programdetermines if the “button” pressed is in the 3^(rd) tier of the phonetree. If the answer is YES, in the next step 1663 the phone tree appendsa string of bits 813 corresponding to the 3^(rd) tier digits (asillustrated for the GEICO tree, 1^(st) Tier selection “1” corresponds to“Regarding a Claim”, 2^(nd) Tier selection “4” corresponds to“Automobile, Motorcycle, or RV” and 3^(rd) Tier selection “4”corresponds to “Claim has been Reported”, and the appended bits willtypically represent a comma and a “1” followed by a comma and a “4”followed by another comma and a “4” (,1,4,4). For some phone trees,appending two commas (,,1,,4,,4) or more may be needed to accommodatepredictable delays in the phone tree response time. Once the string ofbits 813 has been appended to the dialer field, the software can proceedto the steps indicated by “C₁” in FIG. 16, and that correspond to thesteps already illustrated in FIGS. 6 and 7 of the previous embodiment.

If the answer to step 1660 is NO, the program proceeds to the fourthdecision step 1670.

In the fourth decision step 1670, the program determines if the “button”pressed is in the 4^(th) Tier of the phone tree. If the answer is YES,in the next step 1673 the phone tree appends a string of bits 814corresponding to the 4^(th) Tier digits (as illustrated for the GEICOtree, 1^(st) Tier selection “1” corresponds to “Regarding a Claim”,2^(nd) Tier selection “4” corresponds to “Automobile, Motorcycle, orRV”, 3^(rd) Tier selection “4” corresponds to “Claim has been Reported”and 4^(th) Tier selection “1” corresponds to “Party's Extension Known”,and the appended bits will typically represent a comma and a “1”followed by a comma and a “4” followed by another comma and a “4”followed by another comma and a “1” (,1,4,4,1). For some phone trees,appending two commas (,,1,,4,,4,,1) or more may be needed to accommodatepredictable delays in the phone tree response time. Once the string ofbits 814 has been appended to the dialer field, the software can proceedto the steps indicated by “C₁” in FIG. 16, and that correspond to thesteps already illustrated in FIGS. 6 and 7 of the previous embodiment.

If the answer to step 1670 is NO, the program proceeds to the fifthdecision step 1680.

In the fifth decision step 1580, the program determines if the “button”pressed is the “Call” “button” or the “Store” “button”. If the answer isYES, in the next step the options represented by “C₂” as illustrated inFIG. 6 and then FIG. 7 are executed, and the software proceeds to make acall using the steps as described in the previous embodiment.

In this example, the five options representing the 4 tiers, as well asan option to “Call” or “Store”, are the only input options presented tothe user. If none of the options are selected, the software will waituntil one of the options is selected. In some variants of thisembodiment, if no input is received within a certain predetermined timeperiod, a message may be displayed, optionally along with a sound cue,asking the user to make a selection. In some variants of thisembodiment, if no selection is made even after prompting, the programmay cancel or shut down, or revert to the initial input staterepresented by startup step 310 of FIG. 4.

Other variations may be known or derived by those skilled in the art.For example, after a 1^(st) Tier “button” is pressed, the program may bedesigned to display a portion of the graphical phone tree with only the2^(nd) or 3^(rd) Tier sub-options under the selected 1^(st) Tier optiondisplayed as active. The user may then select one of these options asappropriate. In some cases, such as in the GEICO phone tree under 1^(st)Tier option “2” followed by 2^(nd) Tier option “4”, the phone treerequires a zip code to be entered, so the program may be designed todisplay an additional input field to allow the input of a string ofdigits or letters. In some cases, the program may be designed to displayan “Additional Input?” message, with “Yes” or “No” options that allowadditional selections to be made.

V. Variations of the Embodiments

Two embodiments for the creation of a dialstring have been disclosed inthis Application, one with step-by-step navigation through complexoptions for a phone tree, the other with navigation by means of agraphical interface. Other embodiments and implementations of theinvention will be apparent to those skilled in the art.

One option that may be particularly useful is that of using the visualIVR interface as a replacement for a translation service, by providingthe guidance and direction for a Phone Tree in one language with menuchoices or descriptions in the graphical representations presented in adifferent language. This can be especially practical for users whostruggle to hear or understand the spoken options presented the IVRsystem, but may be able to carry on an appropriate conversation oncethey have found the right option.

As an example, although the phone tree itself is the same, a graphicalrepresentation in another language may allow a speaker of a foreignlanguage to select options more readily. This is illustrated in FIG. 19,in which the options of the GEICO Phone Tree as were shown in FIG. 17are shown, but with the text presented in Chinese (and with referencecharacters modified by appending “-C” when compared with the referencecharacters of FIG. 17). Although the ensuing call may still need to takeplace in English, the ability to navigate to the correct option may bemore comfortable for a Chinese native speaker with such a display.

In some embodiments, this variation may be achieved through adaptationof various settings for language selection that may be built in to thestructure of the app. Such setting commands are generally part of an APIfor a particular smartphone operating system, and will be known to thoseskilled in the art. The foreign language that may be used can be anylanguage used by a large enough population that may need access to aparticular phone tree, and may be especially useful if the language usesdifferent characters than the Roman letters of English. For a phone treein English, the foreign language representation may be in Chinese,Japanese, Korean, Thai, Vietnamese, Bahasa Indonesian, Hindi, Bengali,Telugu, Tamil, Urdu, Pashto, Farsi, Arabic, Hebrew, Ethiopian,Afrikaans, Russian, Ukrainian, Greek, Polish, Czech, German, Danish,Swedish, French, Italian, Spanish, Welsh, or Gaelic, among others.

Other embodiments of the invention may combine various elements of thetwo embodiments presented in other ways. For example, although the firstembodiment shows building a Dialer Field by appending strings one at atime as the user goes through the phone tree menus, while the secondembodiment shows the appending a single string representing an ensembleof selections, there is an alternative embodiment in which the user goesthrough the phone tree options one at a time but the final dialstring iscreated at the end of the process, appending a single string thatrepresents the ensemble of choices.

Also, although the embodiments presented have illustrated the DialerField as if it were a separate register in a storage device within thesmartphone, as a practical matter, the Dialer Field may in fact simplybe the value for a string variable within the program, and theinstructions for its assembly comprise lines of code in the softwarethat revise or update the value of the string.

Likewise, the representation of the values to be added to the DialerField may simply exist as predetermined entries in the relationaldatabase that represents the IVR phone tree. The construction of a“Dialer Field” in this embodiment is therefore the assembly of aparticular sequence of SQL commands that access the database as neededto assemble the selected options. Execution of the final SQL commandassembles the dialstring based on the selections by the user and thedatabase entries in the relational database representing the IVR

Although the embodiments presented in this Application illustrate theinvention by the creation of a dialstring using digits and commas(representing pauses), it will be known to those skilled in the art thatmany characters can be used to represent various actions in adialstring. Dialstring characters may include:

0-9 # * (Conventional phone dialer input characters)

, (Pause—typically 2 seconds),

; (Return to beginning after dialing. Must be at the end of a dialstring)

W (Wait for a tone),

@ (Wait for a ‘quiet answer” before continuing)

-   ! (Flash (go on-hook for ½ second).

T (To establish touch-tone dialing)

P (To establish pulse dialing)

R (To enter reverse mode)

70,, (a string to disable call waiting),

Other dialstring characters may be known to those skilled in the art.

Furthermore, although the embodiments illustrated in detail in thisapplication used phone trees in which the entries are generally singledigits, some phone trees may require the user to enter severalcharacters, such as a zip code, phone number, social security number,frequent flyer number, PIN, etc. In this case, the embodiments of theinvention would operate essentially as already presented, except thatthe code implementing the method would be designed to accept the inputof multiple digits or characters, and then appending the multi-digitinput to the dialstring, instead of appending only a single digit.

It should also be noted that the embodiments here may be combined withan additional “search” function, so that the user could simply input asearch string (such as “Kaplan lawsuit” for the USCIS phone tree), andhave the related options (e.g. 1, 3, 1) appear using a suitable userinterface, without requiring that the user go through the phone treestep by step.

VI. Embodiments Using Remote Storage

In the embodiments presented so far, and as illustrated, for example, inFIG. 2, both the software code for the app 160 and the database 177representing the IVR phone trees are present on internal storage 150within the smartphone 100. However, smartphones are often engineeredwith multiple antennas for cellular phone connection and for local wi-fiInternet connections. It may therefore be practical to store thedatabase representing the IVR phone trees on an external storage systemat a remote location, or “in the cloud”. “Cloud” data storage servicesare offered by companies such as Google Inc. of Mountain View, Calif.and Amazon Web Services of Seattle, Wash. (By “remote”, it should beunderstood that the data storage site is simply at a physical locationother than within the smartphone, and need not be “far from a center ofpopulation”).

An embodiment of the invention using remote data storage is illustratedin FIG. 20. The smartphone 100 with one or more antennas 199 can connectwirelessly to local cellular phone transceivers 1190 comprising antennas1199, or through various well known wi-fi protocols (such as Bluetooth)to local transceivers 1700 comprising antennas 1799. These wirelessconnections in turn are linked to a remote data storage facility 1000,either through a conventional telephone system 1777, or through theInternet 7777. Note: Although the antennas 199 are shown in FIG. 20 asan external attachment to the smartphone 100, in practice, the antennasfor most smartphones are built into the body of the phone.

Within the remote data storage facility 1000, storage devices 1050 suchas disk drives, flash memory and the like store a database 1077 thatrepresents one or more IVR phone trees. The remote storage devices 1050may also store backup copies of the app code 1060, a copy of one or moredialer fields 1800 (either dynamically accessed during use, or moreoften as a reference of previously called numbers), a backup copy of anaddress book 1088, and other items that may be of use to the user,either for reference or as backup files for the data stored on thesmartphone.

Within the remote facility 1000 will also be one or more data processingsystems 1001, such as routers or computers, that serve to manage thedata from the stored locations within the facility 1000 and coordinatetheir transmission. Transmission may occur through various telephoneconnections 1100, which will send data and receive instructions andrequests for data through a telephone network 1777 and cellulartransceivers 1190, which comprise one or more antennas 1199 providingconnections to the smartphone 100 by means of cellular phone signals.The data processing systems 1001 may also provide a connection to theInternet 7777, which allows the user interact through a local wi-ficonnection to a local transceiver 1700 comprising wi-fi antennas 1799,allowing instructions and requests for data from the facility 1000 to besent and data received through the Internet.

Depending on the reliability of the user's connection, embodiments ofthe invention may be configured to store everything locally on thesmartphone 100, share databases such as the IVR database betweenportions 177 on the smartphone 100 and portions 1077 in the remotefacility 1000, or may store all IVR phone trees in the database 1077 inthe remote facility 1000, accessing the data as needed.

VII. Embodiments on Other Phones

Although the embodiments described in the Application describeembodiments of the invention as implemented on a smartphone with atouchscreen display, it will be known to those skilled in the art thatnot all mobile phones (or even all smartphones) have a touchscreendisplay. In fact, many cellular phone products, such as thosetraditionally produced by Blackberry Ltd (formerly known as Research InMotion Ltd) of Waterloo, ON, Canada, comprise a display screen and aseparate keypad for entry of characters. Most of the original cellularphones prior to the introduction of the iPhone by Apple Inc. in fact areconstructed with distinct keypads and displays.

Embodiments of the invention in which the input and display are notcombined in a touchscreen but are separate elements, with input achievedby pressing dedicated physical buttons in the keypad, may still functionas well as the embodiments described here. The methods as presented aretherefore still applicable, but each virtual “pressing” of a button inthe disclosed methods will be replaced by the pressing of real buttonson the keypad, with the software code embodiment of the inventionengineered to recognize the pressing of suitable keys or keycombinations as indicative of the “selection” of an item shown in thedisplay.

It will also be recognized by those skilled in the art that, althoughthis has been described as being implemented by smartphone, anycommunication device comprising a display and a means for selectingitems shown in the display may be used for both constructing dialstringsand, if a suitable telephone connection is also available, using thedialstring to make a phone call.

VIII. Embodiments on Computers

Although the embodiments disclosed so far comprise the use of asmartphone for exploring and selecting options from a databasecomprising a representation of one or more IVR phone trees, manycomputers connected to the Internet may also be used for telephone callsusing, for example, Voice-over-Internet-Protocol (VoIP) services such asSkype™, offered by the Microsoft® Skype Division located in Luxembourgand Estonia. Using such a VoIP system, a normal desktop or laptopcomputer can become a telephone terminal for the transmission of both2-way voice and video. Embodiments of the invention may therefore alsobe implemented by a computer, using the same steps of the methodspreviously disclosed, but in which the previously described steps that“display” various items on a smartphone display are replaced by steps“displaying” the same items on one or more display devices connected tothe computer, and the previously described steps of “input” by pressing“virtual buttons” are replaced by steps in which the same input isprovided using a keyboard, mouse, or other I/O device.

FIG. 21 illustrates a block diagram of an exemplary computer system thatcan serve as a platform for portions of embodiments of the presentinvention. Computer code in programming languages such as, but notlimited to, C, C++, C#, Java®, Javascript®, Objective C®, Boo, Lua,assembly, Fortran, APL, etc., and executed in operating environmentssuch as Windows® and all its variants, Mac OS-X®, iOS®, Android®,Blackberry®, UNIX®, Linux®, etc., can be written and compiled into a setof computer or machine readable instructions that, when executed by asuitable computer or other microprocessor based machine, can cause thesystem to execute the method of the invention.

One embodiment of such a computer system 7000 comprises a bus 7007 whichinterconnects major subsystems of computer system 7000, which typicallycomprises: a central processing unit (CPU) 7001; a system memory 7005(typically random-access memory (RAM), but which may also includeread-only memory (ROM), flash RAM, or the like); an input/output (I/O)controller 7020; one or more data storage systems 7050, 7051 such as aninternal hard disk drive or an internal flash drive or the like; anetwork interface 7700 to an external network 7770, such as theInternet, a fiber channel network, or the like; and one or more drives7060, 7061 operative to receive computer-readable media (CRM) such as anoptical disk 7062, compact-disc read-only memory (CD-ROM), compact discs(CDs), floppy disks, universal serial bus (USB) thumbdrives 7063,magnetic tapes, etc.

The computer system 7000 may also comprise: a keyboard 7090; a mouse7092; and one or more various other I/O devices such as a trackball, aninput tablet, a touchscreen device, an audio microphone and the like.These I/O devices may be internal to the system, as is found, forexample, if the computer system 7000 is a laptop, or may be external tothe system, as is found in typical desktop configurations. The computersystem 7000 may also comprise a display device 7080, such as acathode-ray tube (CRT) screen, a flat panel display or other displaydevice; and an audio output device 7082, such as a speaker system. Thecomputer system 7000 may also comprise an interface 7088 to an externaldisplay 7780, which may have additional means for audio, video, or othergraphical display capabilities for remote viewing or analysis of resultsat an additional location.

Bus 7007 allows data communication between central processor 7000 andsystem memory 7005, which may comprise read-only memory (ROM) or flashmemory, as well as random access memory (RAM), as previously noted. TheRAM is generally the main memory into which the operating system andapplication programs are loaded. The ROM or flash memory can contain,among other code, the basic input/output system (BIOS) that controlsbasic hardware operation such as the interaction with peripheralcomponents. Applications resident within computer system 7000 aregenerally stored on storage units 7050, 7051 comprising computerreadable media (CRM) such as a hard disk drive (e.g., fixed disk) orflash drives.

Data can be imported into the computer system 7000 or exported from thecomputer system 7000 via drives that accommodate the insertion ofportable computer readable media, such as an optical disk 7062, a USBthumbdrive 7063, and the like. Additionally, applications and data canbe in the form of electronic signals modulated in accordance with theapplication and data communication technology when accessed from anetwork 7770 via network interface 7700. The network interface 7700 mayprovide a direct connection to a remote server via a direct network linkto the Internet via an Internet PoP (Point of Presence). The networkinterface 7700 may also provide such a connection using wirelesstechniques, including a digital cellular telephone connection, aCellular Digital Packet Data (CDPD) connection, a digital satellite dataconnection or the like.

Many other devices or subsystems (not shown) may be connected in asimilar manner (e.g., document scanners, digital cameras, etc.).Conversely, all of the devices shown in FIG. 21 need not be present topractice the present disclosure. In some embodiments, the devices andsubsystems can be interconnected in different ways from that illustratedin FIG. 21.

Code representing software instructions to implement embodiments of thepresent invention can be stored on one or more computer-readable storagemedia such as: the system memory 7005, internal storage units 7050 and7051, an optical disk 7062, a USB thumbdrive 7063, one or more floppydisks, and the like. The operating system provided for computer system7000 may be any one of a number of operating systems, such as UNIX®,Linux®, MS-DOS®, MS-WINDOWS®, OS-X® or another known operating system.

Moreover, regarding the signals described herein, those skilled in theart will recognize that a signal can be directly transmitted from oneblock to another, between single blocks or multiple blocks, or can bemodified (e.g., amplified, attenuated, delayed, latched, buffered,inverted, filtered, or otherwise modified) by one or more of the blocks.Furthermore, the computer as described above may be constructed as anyone of, or combination of, computer architectures, such as a tower, adesktop, a laptop, a workstation, or a mainframe (server) computer. Thecomputer system may also be any one of a number of other portablecomputers or microprocessor based devices such as a mobile phone, asmartphone, a tablet computer, an iPad®, an e-reader, or wearablecomputers such as smart watches, intelligent eyewear and the like.

For the embodiments of the invention as presented in this Applicationusing such a computer 7000, software code representing the equivalent ofthe app and databases comprising representations if IVR phone trees maybe read from storage devices 7050 or 7051 within the computer system7000, or from CRM such as an optical disk 7062 or USB thumbdrive 7063,and executed using the CPU 7001 and system memory 7005. The options aspreviously described as being displayed using the touchscreen display230 may now be presented on either an internal display 7080 or anexternal display 7780 connected by means of an interface 7088, and theuser may make “selections” using a keyboard 7090 and/or mouse 7092synchronized with a graphical user interface (GUI) constructed withinthe software to allow coordination of the options shown on the availabledisplays 7080 or 7780.

IX. Hardware and Software

Accordingly, embodiments of the present invention may be encoded insuitable hardware and/or in software (including firmware, residentsoftware, microcode, etc.). Furthermore, embodiments of the presentinvention may take the form of a computer program product on anon-transitory computer readable storage medium having computer readableprogram code comprising instructions encoded in the medium for use by orin connection with an instruction execution system. Non-transitorycomputer readable media on which instructions are stored to execute themethods of the invention are therefore in turn embodiments of theinvention as well. In the context of this Application, a computerreadable medium may be any medium that can contain, store, communicate,propagate, or transport the program for use by or in connection with theinstruction execution system, apparatus, or device.

The computer readable medium may be, for example but not limited to, anelectronic, magnetic, optical, electromagnetic, infrared, orsemiconductor system, apparatus, or device. More specific examples (anon-exhaustive list) of a computer readable media would include thefollowing: an electrical connection having one or more wires, a portablecomputer diskette, a random access memory (RAM), a read-only memory(ROM), an erasable programmable read-only memory (EPROM or Flashmemory), an optical fiber, and a portable compact disc read-only memory(CD-ROM).

X. Limitations

With this Application, several embodiments of the invention, includingthe best mode contemplated by the inventors, have been disclosed. Itwill be recognized that, while specific embodiments may be presented,elements discussed in detail only for some embodiments may also beapplied to others.

While specific materials, designs, configurations, platforms and processsteps have been set forth to describe this invention and the preferredembodiments, such descriptions are not intended to be limiting.Modifications and changes may be apparent to those skilled in the art,and it is intended that this invention be limited only by the scope ofthe appended claims.

What is claimed is:
 1. A server for an interactive voice response (IVR)database, comprising: a first non-transitory computer readable mediumhaving encoded upon it a database that represents one or more IVR phonetrees comprising a number of IVR phone tree data entries for telephonenumbers and IVR phone tree options as well as metadata about the IVRphone trees, in which the IVR phone tree options are each associatedwith at least one of the telephone numbers, and in which each of the IVRphone tree options is also associated with a dialstring modification;and a second non-transitory computer readable medium having encoded uponit instructions executable by a data processing system within the serverto perform process steps comprising: detecting a signal transmitted tothe server from an electronic smartphone through a communications port;identifying from at least a portion of the signal a representation of atleast a portion of a telephone number; searching the database of thefirst non-transitory computer readable medium for a set of IVR phonetree options and associated dialstring modifications associated with theidentified telephone number; and transmitting data representing at leasta portion of the IVR phone tree options and associated dialstringmodifications to the electronic smartphone.
 2. The server of claim 1, inwhich the first non-transitory computer readable medium and the secondnon-transitory computer readable medium are both sections of diskdrives.
 3. The server of claim 1, in which the first non-transitorycomputer readable medium and the second non-transitory computer readablemedium are both sections of a single disk drive.
 4. The server of claim1, in which the first non-transitory computer readable medium and thesecond non-transitory computer readable medium are both blocks of memoryelements on flash memory drives.
 5. The server of claim 1, in which thefirst non-transitory computer readable medium and the secondnon-transitory computer readable medium are both blocks of memoryelements on a single flash memory drive.
 6. The server of claim 1, inwhich the process steps additionally comprise: after transmitting datarepresenting at least a portion of the IVR phone tree options andassociated dialstring modifications to the electronic smartphone,receiving a second signal from the electronic smartphone through saidcommunications port; and, based on the second signal received from theelectronic smartphone, synthesizing a dialstring using data stored inthe database; and transmitting the synthesized dialstring to theelectronic smartphone.
 7. The server of claim 6, in which the processsteps additionally comprise: after transmitting the synthesizeddialstring to the electronic smartphone, receiving a third signal fromthe electronic smartphone through the communications port; and, based onthe third signal received from the smartphone, initiating a telephonecall using the synthesized dialstring.
 8. The server of claim 1, inwhich the signal transmitted from a smartphone is received via awireless connection.
 9. The server of claim 7, in which the second andthird signals transmitted from a smartphone are received via a wirelessconnection.
 10. The server of claim 1, in which the signal transmittedfrom a smartphone is received via an Internet connection.
 11. The serverof claim 7, in which the second and third signals transmitted from asmartphone are received via an Internet connection.
 12. The server ofclaim 1, in which the database is a relational database.